同样的页面在编辑器中正常,在浏览器中跨域

我用的atom编辑器,有个在编辑器打开浏览器的插件,实际上也是谷歌浏览器,然后我用自己的谷歌浏览器打开,发现跨域了,怎么回事呢
XMLHttpRequest cannot load http://jsjzs.hdu.edu.cn/catch.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access.
服务端是用php写的,已经设置相应返回头

主要是为何两个地方表现不同?

阅读 2.9k
3 个回答

解决跨域的方式有很多种。常用的方式比如在响应头里添加

Access-Control-Allow-Origin: *

又比如使用nginx反向代理解决跨域。你的atom插件解决跨域的方式,有可能就是用的这样的方式。

所以区别就是,插件帮你搞定了跨域问题,而你自己的浏览器并没有任何措施来解决跨域,当然会出现问题。

你在自己的chrome里面打开的是编辑器中提供的网址,还是说直接打开了本地的html文件?

两个地方表现不同是何解?
localhostjsjzs.hdu.edu.cn不同域
需要jsjzs.hdu.edu.cn的response header里加Access-Control-Allow-Origin: *

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题