【发布时间】:2013-01-07 16:44:45
【问题描述】:
我正在使用 jQuery 1.8.3 Ajax 函数进行跨域请求。下面的代码总是返回“失败”,但控制台日志中的每个 Ajax 请求都会记录“200 OK”。鉴于日志显示状态为 200,不应该执行成功功能吗?返回状态为200时如何获取成功函数?
$().ready(function() {
var checkIt = function(checkURL, resultP) {
$.ajax({
url: checkURL,
type: 'GET',
cache: false,
success: function() {
$(resultP).text("ok");
},
error: function() {
$(resultP).text("fail");
}
});
};
checkIt("https://firstURL", "#p1p");
checkIt("https://secondURL", "#p2p");
checkIt("https://thirdURL", "#p3p");
)};
控制台日志显示如下(每个请求都有一个 200 响应)
[10:03:37.898] GET https://firstURL [HTTP/1.1 200 OK 141ms]
[10:03:37.898] GET https://secondURL [HTTP/1.1 200 OK 141ms]
[10:03:37.898] GET https://thirdURL [HTTP/1.1 200 OK 141ms]
谢谢!
【问题讨论】:
-
该问题的答案建议使用 Google Books API 或 jsonp,这两种方法都不适合我
-
如果 url 不在同一个域中,那么你就不走运了。