gpt4 book ai didi

javascript - Access-Control-Allow-Origin 不允许 Origin

转载 作者:IT老高 更新时间:2023-10-28 13:18:58 24 4
gpt4 key购买 nike

XMLHttpRequest cannot load http://localhost:8080/api/test. Origin http://localhost:3000 is not allowed by Access-Control-Allow-Origin. 

我阅读了有关跨域 ajax 请求的信息,并了解了潜在的安全问题。在我的例子中,有 2 台服务器在本地运行,并且喜欢在测试期间启用跨域请求。

localhost:8080 - Google Appengine dev server
localhost:3000 - Node.js server

当我的页面从 Node 服务器加载时,我正在向 localhost:8080 - GAE 服务器 发出 ajax 请求。什么是最简单、最安全的(不想使用 disable-web-security 选项启动 chrome)。如果我必须更改 'Content-Type',我应该在 Node 服务器上进行吗?怎么样?

最佳答案

由于它们运行在不同的端口上,它们是不同的 JavaScript origin。它们在同一台机器/主机名上并不重要。

您需要在服务器 (localhost:8080) 上启用 CORS。看看这个网站:http://enable-cors.org/

您需要做的就是向服务器添加一个 HTTP header :

Access-Control-Allow-Origin: http://localhost:3000

或者,为简单起见:

Access-Control-Allow-Origin: *

如果您的服务器尝试设置 cookie 并且您使用 withCredentials = true

,请不要使用“*”

when responding to a credentialed request, server must specify a domain, and cannot use wild carding.

You can read more about withCredentials here

关于javascript - Access-Control-Allow-Origin 不允许 Origin <origin>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18642828/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com