我正在尝试使用 Bing map REST 服务通过城市名称获取有关城市位置的信息。当我直接在浏览器中输入查询字符串时,它会返回响应,但我似乎无法在 jquery 代码中执行此操作。我有以下内容:
var cs = "san diego";
var qs = "http://dev.virtualearth.net/REST/v1/Locations?q=" + cs + "&type=xml&key=MY_BING_MAPS_KEY";
jQuery.getJSON(qs, function(hs){alert(hs)});
根据 firebug,我根本没有得到任何响应(响应代码是 200)。知道会发生什么吗?我的代码的其他部分有其他 REST 调用,那里绝对没有问题。
使用 API 的文档位于:http://msdn.microsoft.com/en-us/library/ff701711.aspx
谢谢!
**编辑:实际上有一种方法可以通过执行以下操作从 bing map 强制 JSONP 来克服此问题:
$.ajax({
url: "http://dev.virtualearth.net/REST/v1/Locations",
dataType: "jsonp",
data: {
key: key,
q: q
},
jsonp: "jsonp",
success: function (data) {
}
});
**
最佳答案
您正在尝试进行跨域 ajax 调用,这意味着您正在对与运行应用程序的域不同的域进行 ajax 调用!您需要阅读如何做到这一点。 Here is a link
关于jquery getJSON/ajax 没有从 REST 服务得到响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6849952/