CORS error on same domain?

我现在遇到了一个奇怪的 CORS 问题。

下面是错误消息:

XMLHttpRequest cannot load http://localhost:8666/routeREST/select?q=[...]
Origin http://localhost:8080 is not allowed by Access-Control-Allow-Origin

两台服务器:

  • Localhost: 8666/routeREST/: 这是一个简单的 Python Bottle 服务器。
  • Localhost: 8080/: Python simpleHTTPserver,我在其中运行 y Javascript 应用程序。

有什么问题吗?

EDIT:

还有... 港口就是问题所在。谢谢你的回答:)

如果有人也在使用 Python 瓶子服务器,你可以按照本文给出的答案来解决 CORS 问题: Bottle Py: Enabling CORS for jQuery AJAX requests

112688 次浏览

只有当 规定主持人 还有 左舷是相同的: 同一原产地政策时,它才被认为是相同的

如果你想启用它,你必须按照 跨来源资源共享(cors)添加头文件。 Mozilla 有 例子

你需要在你的回复中添加访问控制-允许-起源作为头部。为了允许每个人(你可能应该 NOT这样做) :

Access-Control-Allow-Origin: *

如果你需要支持多个起源(例如 example.comwww.example.com) ,在你的回复中设置 Access-Control-Allow-Origin为来自请求的 Origin头的值(在你确认起源是白名单之后)

还要注意,有些请求会发送一个带有 OPTION 方法的起飞前请求,因此如果您编写自己的代码,也必须处理这些请求。有关 例子,请参见 Mozilla。

端口号不一样。

如果任何方案、主机名或端口不匹配,则认为请求是跨域的。