Uncaught SyntaxError: Unexpected token < in JSON at position 0 at JSON.parse () at XMLHttpRequest [duplicate]
I'm trying to make an xmlhtttprequest
request and this error always comes up and I'm told that this type of error only happens when there is some html
tag
in the php
code and I can't see where it is.
Of course, if the problem is not the php
file, please indicate where it is.
Arquivo Js:
function connection() {
document.getElementById("characterSpinnerSection").innerHTML = "";
document.getElementById("comicsSpinnerSection").innerHTML = "";
var xhr = new XMLHttpRequest();
var name = document.getElementById("name").value;
var params = "name=" + name;
xhr.open("GET", "./connections/name-search.php?" + params , true);
xhr.onloadstart = function() {
document.getElementById("characterSpinnerSection").innerHTML =
'<strong id="spinnerText" class="text-primary">Loading character...</strong>' +
'<div class="text-primary spinner-border ml-auto" role="status" ' +
'aria-hidden="true" id="spinner"></div>';
};
xhr.onload = function() {
if (this.status == 200) {
const object = JSON.parse(this.responseText);
const results = JSON.parse(object);
console.log(results["data"]);
if (results["data"].count === 0) {
document.getElementById("characterSection").innerHTML =
'<h2 id="characterMainTitle"><span style="font-weight:bold;">No results for... ' +
name +
"</span>" +
". Try again.</h2>";
document.getElementById("characterSpinnerSection").innerHTML = "";
document.getElementById("comicsSpinnerSection").innerHTML = "";
}}}
Arquivo PHP:
<?php
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) {
if (isset($_GET['name'])) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$name_to_search = htmlentities(strtolower($_GET['name'])); // HuLk == hulk
$ts = time();
$public_key = 'something';
$private_key = 'another thing';
$hash = md5($ts . $private_key . $public_key);
$query = array(
"name" => $name_to_search, // ""
"orderBy" => "name",
"limit" => "20",
'apikey' => $public_key,
'ts' => $ts,
'hash' => $hash,
);
$marvel_url = 'https://gateway.marvel.com:443/v1/public/characters?' . http_build_query($query);
curl_setopt($curl, CURLOPT_URL, $marvel_url);
$result = json_decode(curl_exec($curl), true);
curl_close($curl);
echo json_encode($result);
} else {
echo "Error: no name given.";
}
} else {
echo "Error: wrong server.";
}
?>
source https://stackoverflow.com/questions/67781102/uncaught-syntaxerror-unexpected-token-in-json-at-position-0-at-json-parse
Comments
Post a Comment