【发布时间】:2014-08-04 05:08:57
【问题描述】:
我知道这个问题之前已经被问过(很多次),但我似乎仍然无法正确回答。
我想在 jQuery 中执行 AJAX 请求并获取“任意”内容 - 例如可能是html、text、json、img
当我执行以下操作时,我得到了臭名昭著的 请求的资源上不存在“Access-Control-Allow-Origin”标头。因此不允许访问 Origin 'http://mydomain.com'。
$.ajax({
url: "http://www.pureexample.com/jquery/cross-domain-ajax.html",
// dataType: "jsonp",
crossDomain: true,
success: function (data) {
console.log('success');
console.log(data);
},
error: function(request, status, error) {
console.log('Error on request. ' + request.responseText);
alert('Error on request. ' + request.responseText);
}
});
我没有提供数据,所以我不能在服务器端做任何事情来允许跨域请求。我相信指定 JSONP (注释掉)假设 JSON 被返回?不管有没有,它都行不通。
所以,底线 - 是否有一种“简单”的方式来处理跨域请求,以便我可以获得结果并插入标签(例如 html 到 DIV)
非常感谢任何帮助或进一步的解释。
谢谢。 抢
【问题讨论】:
-
如果远程服务器没有明确提供 JSONP 响应,那么您可以做的唯一事情就是通过您自己的服务器代理这些请求,这样 SOP 就不会申请。
标签: jquery ajax cross-domain