0

嗨,我想在 xui 中获取一个带有 xhr 的 json 文件,我的代码是这样的:

function getRequest()
{   
   x$().xhr('http://localhost:8080/DummyServer/login/request/',  
   {
      callback: function() 
      {
         saveLocalStorage(this.responseText);    
      },
   });
}   

我用 safari 控制台检查,我收到这样的错误:

XMLHttpRequest cannot load http://localhost:8080/DummyServer/login/request/. Origin http://localhost is not allowed by Access-Control-Allow-Origin.

但是当我使用 coda ide 时没有错误,我想知道为什么。任何人都可以帮助我解决这个 xui.js 吗?

4

2 回答 2

1

浏览器强制执行同源策略,以保护网站免受其他网站发出 xhr 请求并显示其内容,就好像它是他们自己的一样。

所以站点 A.com 无法使用 XHR 连接到 B.com 或: http://A.com无法连接到http://sub.A.com localhost:80 无法连接到 localhost:8080

解决此问题的一种方法是使用 JSONP 或 CORS 标头,但 IE<10 不支持 CORS。

于 2013-06-25T02:39:56.103 回答
-1

最后我可以用 chrome 来做到这一点,我禁用 AJAX 的跨域安全检查,用这个打开 chrome:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security(在windows ) 和所有功能运行没有任何错误的细节: http: //opensourcehacker.com/2010/11/29/disabling-cross-domain-security-check-for-ajax-development-in-google-chrome/

于 2013-07-03T09:37:20.870 回答