【发布时间】:2019-11-09 14:07:53
【问题描述】:
我在本地连接到 mongo db 的端口 8000 上运行 node.js API。
然后我在端口 3000 上启动我的反应服务器,并立即在控制台中收到错误:
从源“http://localhost:3000”访问“http://localhost:8000/api/hero/”处的 XMLHttpRequest 已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。
这对于 localhost 设置是否正常?
【问题讨论】:
-
Access-Control-Allow-Origin 阻止所有未在 node.js API developer.mozilla.org/en-US/docs/Web/HTTP/Headers/… 中定义的请求
-
跨域资源共享,当您从一个来源
http://localhost:3000向另一个来源http://localhost:8000/api/hero/请求一些数据时,如果您从http://localhost:8000/到http://localhost:8000/api/hero/有请求,则不会发生这种情况,因为它们是同源 -
@Arseniy-II,我无法运行 node.js 并在同一个端口上做出反应
-
我相信你可以。但你可能不会。它是由你决定。如果您希望拥有不同的端口,则需要按照 Janneck Lange 向您建议的那样在响应中添加跨域标头
-
你可以用谷歌搜索'node cors error'。你会有很多答案。这是第一个结果daveceddia.com/…