我的代码就像
$.ajax({
cache: false,
url: <Web Service URL>,
data: "{}",
type: 'GET',
crossDomain: true,
dataType: 'json',
success: function() { alert("Success"); },
error: function() { alert('Failed!'); },
});
我正在尝试使用JQuery从客户端访问REST API,但它提供了类似的错误
XMLHttpRequest cannot load <Web Service URL>. Origin null is not allowed by Access-Control-Allow-Origin.
所以有人可以帮我解决这个错误..?
答案 0 :(得分:2)
在Google之后,我开始知道,用户必须在phonegap / hybrid应用程序的config.xml中添加“”。
答案 1 :(得分:1)
Ajax请求需要是服务于网页的服务器。
您可以在您的网站上设置一个代理,将代理从浏览器转发到您希望拨打电话的网站。
http://your.site.here/proxy/bentley/LearnService/Learnservice.svc/REST/ ...
因此,如果你碰巧使用apache,你可以通过在httpd.conf中添加如下内容来配置反向代理:
ProxyPassReverse /proxy/bentley http://khara37793punl.bentley.com/
答案 2 :(得分:1)
使用此问题查看其他SO问题: Access Control Allow Origin not allowed by
而着名的: Access-Control-Allow-Origin Multiple Origin Domains?
所有人都解释了这些答案,你必须允许脚本服务器,或者你的脚本必须在同一台服务器上。