Mam problem z ustawieniem parametru responseType XHR na "json". To działa dobrze, jeśli mogę zostawić to pusty ciąg xml.responseType = "";
ale kiedy ustawić ją na „json” pojawia się komunikat o błędzie konsoli SYNTAX_ERR DOM Exception 12.XMLHttpRequest responseType = "json" podając błąd SYNTAX_ERR: DOM Exception 12
Plik js:
var xml = new XMLHttpRequest();
xml.open("GET", "test.php", true);
xml.responseType = "json";
xml.send();
. plik php:
<?php
$foo = "{\"key1\":\"val1\", \"key2\":\"val2\"}";
echo $foo;
?>
Nie wiesz, co się dzieje .. Jakieś pomysły?
Ok .. po dalszych badań, będzie przyjmować wszystkie wartości wymienionych [tutaj] (https: // developer. mozilla.org/en/XMLHttpRequest) ("dokument", "blob", "arraybuffer", "text", "") Z WYJĄTKIEM dla "json". Próbowałem go w Chrome 17 i Safari 5.1 – alnafie
Pamiętaj też, że gdy dane wyjściowe z serwera umieszczają odpowiedni typ MIME treści w zwrocie. header ("Content-Type: application/json"); powinien naprawić problem. Powinieneś także używać json_encode zamiast samemu tworzyć json. print json_encode (array ("key1" => "val1", "key2" => "val2")); – Rahly
Od marca 2014 r. ResponseType = "json" jest obsługiwany w najnowszych przeglądarkach Chrome i Firefox oraz w Operze. – Kay