Node.js cors问题与角度和;nodejs(已解决)
我正在使用angular&node.js和cors 在我的本地设备中,一切都很好,工作正常 现在是部署到云服务器的时候了 每个前端和后端的路径 端口上的根/后端工作:5000 端口上的根/前端工作:5002 (数字海洋) 我建立了apache2和phpmyadmin 在后端Node.js cors问题与角度和;nodejs(已解决),node.js,angular,cors,digital-ocean,Node.js,Angular,Cors,Digital Ocean,我正在使用angular&node.js和cors 在我的本地设备中,一切都很好,工作正常 现在是部署到云服务器的时候了 每个前端和后端的路径 端口上的根/后端工作:5000 端口上的根/前端工作:5002 (数字海洋) 我建立了apache2和phpmyadmin 在后端 var corsOptions = { origin: "http://localhost:5002" }; 它应该通过工作来实现 但它给我的状态是:0 我打开2个终端来运行项目前端和项目后端 ng
var corsOptions = { origin: "http://localhost:5002" };
它应该通过工作来实现
但它给我的状态是:0
我打开2个终端来运行项目前端和项目后端
ng serve—主机0.0.0.0—端口5002
当我运行它时,它工作https//ip:5002,但没有数据
编辑:
我也犯了这样的错误
Access to XMLHttpRequest at 'http://localhost:5000/api/auth/signup' from origin 'http://ip:5002' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: The 'Access-Control-Allow-Origin' header has a value 'http://localhost:5002' that is not equal to the supplied origin.
如果已在服务器上部署项目: 尝试在后端更改此设置:
var-corsOptions={origin:http://localhost:5002" };代码>
为此:
cors({
origin: "*",
})
注意:“*”表示任何人都可以连接到您的API,或者您可以将您的服务器的IP用于您的预期项目
在fortend端,确保您正在从后端服务器调用请求,例如:
在本地计算机上,您可以通过以下方式调用它:
http://localhost:5000/api/auth/signup
但当您的后端位于服务器上时,您需要将其更改为:
http:///api/auth/signup
尝试从http://localhost:5002
,而不是https//ip:5002
。如果将https//ip:5002
放入浏览器地址栏并以这种方式运行,则它与http://localhost:5002
,因此浏览器会阻止前面的代码访问响应。浏览器检查实际原点值和访问控制允许原点值之间是否完全匹配。和https//ip:5002
不完全匹配http://localhost:5002
。