好的,所以原型不是我的选择,但客户网站使用它,我必须适应。
我有一个来自站点 A 的 XML 提要,我的函数是:
new Ajax.Request('somefeedurl.ashx',
{
method:'get',
onSuccess: function(transport){
console.log("Transport: "+transport)
myParseXml(transport.responseXML);
},
onFailure: function(){
alert('Something went wrong...')
}
});
我已经实现了一个跨域.xml文件来允许访问 somefeedurl.com 但我仍然得到相同的 Origin:访问控制-允许-源不允许。
使用原型有什么办法解决这个问题吗?
作为第二个问题。一旦我解决了这个问题,我运行函数 myParseXML() 来实际进行处理是否正确?也就是说,transport.responseXML会从提要中给出XML数据吗?
问候罗伯特
No.如果提供 XML 源的其他站点没有明确允许跨域请求,则由于 sop 的原因,您无法使用 Ajax (直接)检索它 - 任何"解决方法"都将是一个安全错误。
不管你用什么库来包装你 ajax 调用。
另请参阅 XMLHTTPRequest 的文档,其中将调用 onsuccess 处理程序。所以回答你的第二个问题:不,responseXML
已经被解析为文档。