我在将XHR responseType设置为“ json”时遇到麻烦。如果我将其保留为空字符串,则工作正常,xml.responseType = "";但是当我将其设置为“ json”时,会收到控制台错误消息SYNTAX_ERR:DOM异常12。
xml.responseType = "";
.js文件:
var xml = new XMLHttpRequest(); xml.open("GET", "test.php", true); xml.responseType = "json"; xml.send();
.php文件:
<?php $foo = "{\"key1\":\"val1\", \"key2\":\"val2\"}"; echo $foo; ?>
不知道发生了什么。
responseType``XMLHttpRequest对象的属性已添加到其新的变体XMLHttpRequest Level 2中,并且包含在中HTML 5,我不确定所有浏览器都支持此方法,因此您可能使用的是未实现该方法的浏览器
responseType``XMLHttpRequest
HTML 5
而不是使用,responseType您可以使用以下代码来获取所需格式的数据
responseType
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);