跨域$ .ajax()没有“?callback =?”

时间:2013-02-07 21:59:36

标签: jquery json jsonp

可以在没有$.ajax的情况下使用?callback=吗?

我正在尝试为此网址http://gbrds.gbif.org/registry/organisation/15b278a8-1356-4f7b-ba32-3c733c3d0aac.json?op=contacts获取JSON响应,但是,在请求中,jQuery将?callback=添加到网址,因此获得了不同的结果。

该请求适用于远程域:

     $.ajax({ url: encodeURI("http://gbrds.gbif.org/registry/organisation/15b278a8-1356-4f7b-ba32-3c733c3d0aac.json?op=contacts"),
     dataType: 'jsonp', 
     type: 'GET',
     success: function(data){...});

1 个答案:

答案 0 :(得分:0)

是的,有可能 - 但是,您必须拥有支持CORSCross-Origin Resource Sharing)的浏览器,并且您需要确保将服务器设置为允许来自至少您的域的请求通过发送Access-Control-Allow-Origin HTTP标头。一旦您同时拥有这两项内容,只需将dataTypejsonp更改为json即可。