此请求仅适用于Internet Explorer,
我尝试了许多不同的解决方案,但是两天来我一直在努力使它可行,但我却没有。请指教。
纯JavaScript:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
data = xmlhttp.responseText;
console.log(data);
document.getElementById("p").innerText = data;
}
};
xmlhttp.open("GET", "http://myanimelist.net/api/anime/search.xml?q=naruto", true);
xmlhttp.setRequestHeader('Authorization','Basic TUFMUTpNTU1xcXExMTEyMjJAQEAjIyM=');
xmlhttp.send(null);
jQuery的:
$.ajax({
url: "http://myanimelist.net/api/anime/search.xml?q=naruto",
cache: false,
headers: {"Authorization": "Basic TUFMUTpNTU1xcXExMTEyMjJAQEAjIyM=" ,"Content-Type": "application/xml"},
method: 'GET',
dataType: 'xml',
async: true,
success: function(data) {
var xmlText = new XMLSerializer().serializeToString(data);
var xmlTextNode = document.createTextNode(xmlText);
var parentDiv = document.getElementById('sdiv');
parentDiv.appendChild(xmlTextNode);
}
});
最佳答案
由于Same Origin Policy,AJAX限于您网站的同一域。
您将必须找到一种方法来规避它,或者将AJAX与服务器端脚本结合使用以获得所需的结果。如果要使用PHP之类的东西,可以使用simplexml_load_string(file_get_contents("http://example.org/search.xml?query"));
之类的东西,但是我想您还会发现所讨论的域也正在使用HTTP身份验证。