跨域XML文件上的$ .ajax JSONP

时间:2012-08-08 17:17:46

标签: ajax jquery

我正在尝试从跨域源读取XML,并且我无法将回调响应转换为字符串。如果我在chrome中查看控制台,我将'资源解释为脚本,但使用MIME类型text / xml传输:http://mysite.com:2000/g7?callback=jQuery17209426668137311935_1344441190139&_=1344441194148'

然后是'Uncaught SyntaxError:Unexpected token<'

我在这里缺少什么?

$。AJAX({     类型:'GET',     网址:'http://mysite.com:2000/g7',     dataType:'jsonp',     mimeType:'text / xml' });

1 个答案:

答案 0 :(得分:2)

  

我在这里缺少什么?

JSONP推断包含在回调中的JSON响应这一事实。这不适用于XML。因此,您必须修改远程服务器端脚本,以便它返回JSONP,而不是XML。例如,响应可能如下所示:

callback({ xml: '<node>foo bar</node>' });

但是如果远程服务器直接发送XML,则由于相同的源策略限制,您无法使用AJAX来调用它。

相关问题