【发布时间】:2016-05-20 04:36:15
【问题描述】:
我尝试在 jQuery AJAX 请求中发送 GET 请求。
$.ajax({
type: 'GET',
url: /* <the link as string> */,
dataType: 'text/html',
success: function() { alert("Success"); },
error: function() { alert("Error"); },
});
但是,无论我尝试过什么,我都得到了XMLHttpRequest cannot load <page>. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:7776' is therefore not allowed access.
我尝试了一切,从将 header : {} 定义添加到 AJAX 请求到将 dataType 设置为 JSONP,甚至 text/plain,使用简单的 AJAX 而不是 jQuery,甚至下载了启用 CORS 的插件 - 但没有可以帮忙。
如果我尝试访问任何其他网站,也会发生同样的情况。
对于适当且简单的解决方案有任何想法吗?有吗?
【问题讨论】:
-
您不能向另一个域发出 ajax 请求,因为 CORS(跨域资源共享),除非另一个域(在本例中为 stackoverflow)允许。
-
你不能单独在浏览器上绕过同源策略,因为它会完全违背它的目的。
-
@Juhana 这个答案也是来自 Stack Overflow!
-
不知道你想说什么,但没关系。
-
@Juhana 您的评论暗示浏览器插件是解决此问题的荒谬且荒谬的方法。我强调这样做的想法也来自这个网站,我认为这表明即使在这里,也可以给出糟糕的答案而无需投票。这很可悲,但我当然不会评判网站质量。
标签: javascript jquery ajax cors xmlhttprequest