我在通过 ajax 接收 json 时遇到问题,错误如下。根据我迄今为止发现的有关该错误的信息,这似乎是某种跨域问题,但我不知道这意味着什么以及如何解决它。
响应头可能有问题(我自己创建了 API,之前没有经验),但是如果直接在浏览器中访问 url,则会收到 200 OK。
如果直接在浏览器中访问 url 会显示有效的 json,那么这应该不是问题。
如何解决?
注意:该 url 转到 Apache 服务器,而不是我在 Stack 上阅读过的有关该问题的 95% 问题的文件。
检查员错误:
XMLHttpRequest cannot load http://localhost/api/v1/products?_=1355583847077.
Origin null is not allowed by Access-Control-Allow-Origin.
Error: error
编码:
$.ajaxSetup ({
url: "http://localhost/api/v1/products", // <--- returns valid json if accessed in the browser
type: "GET",
dataType: "json",
cache: false,
contentType: "application/json"
})
$.ajax({
success: function(data){
console.log("You made it!");
},
error: function(xhr) {
console.log("Error: " + xhr.statusText);
}
}).done(function(data){
console.log(data);
})
参数
_ 1355583610778
标头
响应标头:
Connection Keep-Alive
Content-Length 3887
Content-Type application/json
Date Sat, 15 Dec 2012 14:50:53 GMT
Keep-Alive timeout=5, max=100
Server Apache/2.2.14 (Unix) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l PHP/5.3.1 mod_perl/2.0.4 Perl/v5.10.1
X-Powered-By PHP/5.3.1
请求标头:
Accept application/json, text/javascript, */*; q=0.01
Accept-Encoding gzip, deflate
Accept-Language sv-SE,sv;q=0.8,en-US;q=0.5,en;q=0.3
Connection keep-alive
Host localhost
Origin null
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/17.0 Firefox/17.0
回复
这里没有什么...