javascript - the - XMLHttpRequest responseType="json" que da error SYNTAX_ERR: DOM Exception 12
php post 500 internal server error (2)
Tengo problemas para configurar el tipo de respuesta XHR en "json". Funciona bien si le dejo una cadena vacía xml.responseType = "";
pero cuando lo configuro como "json" recibo el mensaje de error de consola SYNTAX_ERR: DOM Exception 12.
El archivo .js:
var xml = new XMLHttpRequest();
xml.open("GET", "test.php", true);
xml.responseType = "json";
xml.send();
El archivo .php:
<?php
$foo = "{/"key1/":/"val1/", /"key2/":/"val2/"}";
echo $foo;
?>
No estoy seguro de lo que está pasando ... ¿Alguna idea?
El JSON responseType no está implementado en el WebKit. http://groups.google.com/a/chromium.org/group/chromium-bugs/browse_thread/thread/8107e50e4207eb5a/a5d2c31247feae56?lnk=raot
Actualización 2016-01-03: Como era de esperar, WebKit ha implementado esta función mientras tanto.
responseType
propiedad responseType
para el objeto XMLHttpRequest
se agrega en su nueva variante XMLHttpRequest Level 2 y se incluye en HTML 5
, no estoy seguro de que todos los navegadores admitan este método, por lo que es posible que esté usando un navegador que no implemente ese método
en lugar de usar responseType
, puede usar el siguiente código para obtener datos en el formato deseado
var xml = new XMLHttpRequest();
xml.open("GET", "test.php", true);
xml.onreadystatechange = function() {
if (xml.readyState != 4) { return; }
var serverResponse = JSON.parse(xml.responseText);
};
xml.send(null);