我正在尝试从跨域源读取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' });
答案 0 :(得分:2)
我在这里缺少什么?
JSONP推断包含在回调中的JSON响应这一事实。这不适用于XML。因此,您必须修改远程服务器端脚本,以便它返回JSONP,而不是XML。例如,响应可能如下所示:
callback({ xml: '<node>foo bar</node>' });
但是如果远程服务器直接发送XML,则由于相同的源策略限制,您无法使用AJAX来调用它。