https 的 CORS 访问控制允许来源

CORS Access-Control-Allow-Origin for https

我有一个由两部分组成的应用程序,

我已经在 API app.js 中设置了 res.setHeader('Access-Control-Allow-Origin', '*');,并且可以毫无问题地手动访问 API。

但是在使用 webapp 时出现以下错误 No 'Access-Control-Allow-Origin' header is present.

它在我使用 http 时有效,但使用云端分发中的 https 时出现错误。

任何有关阅读内容的帮助或指示将不胜感激。

首先通过运行一个类似下面的curl命令检查来源returns是否"Access-Control-Allow-Origin"header:

curl -H "origin: example.com" -v "https://api.example.com/hello"

HTTP/1.1 200 OK
Server: nginx/1.10.2
Date: Mon, 01 May 2018 03:06:41 GMT
Content-Type: text/html
Content-Length: 3770
Last-Modified: Thu, 16 Mar 2017 01:50:52 GMT
Connection: keep-alive
ETag: "58c9ef7c-eba"
Access-Control-Allow-Origin: *
Accept-Ranges: bytes

其次,检查云端发行版是否允许 GET, HEAD, OPTIONS http 方法。

参考: https://aws.amazon.com/premiumsupport/knowledge-center/no-access-control-allow-origin-error/