同源策略错误


Same Origin Policy Error , jQuery

我正在开发一个Web Service的前端(html-jquery)和后端(php)。我正在使用XAMPP(Apache)在我的本地主机上开发。我把我的前端和后端放在eclipse的不同项目中,只是为了让一切更干净。

然而,我需要做一个ajax调用(Http Post请求)从jQuery到php服务器。我总是得到错误:XMLHttpRequest cannot load http://193.164.4.112/Server_CityInfo/whereSubscribed.php. Origin http://localhost is not allowed by Access-Control-Allow-Origin.

我看了一下这个错误,我发现它与同源策略有关。

我也读到解决这个错误的可能解决方案是使用CORS, JSONP或代理。然而,从错误的定义,我明白,通过简单地保持文件在同一目录将解决问题,对吗?因此,我所做的是将所有前端文件移动到后端目录中,并尝试再次运行html页面以发出请求。

繁荣!我又得到同样的错误。我做错什么了吗?既然它们在同一个目录中,难道它不能工作吗?

只要把文件放在同一个目录就可以解决问题了,对吗

。它们必须在相同的来源(协议,主机名,端口)。

你有

:

http  193.164.4.112  80 (default for HTTP) 
http  localhost      80 (default for HTTP) 

193.164.4.112不是localhost,所以你碰到了同源策略。

193.164.4.112localhost可能解析到同一台机器,由同一web服务器处理,并提供相同的文件,但浏览器不知道。url必须匹配