尝试连接到 AWS WebSockets API Gateway 时总是被 CORS 拒绝

Mar*_*her 5 websocket cors socket.io aws-api-gateway

我可以使用 wscat 连接到我的 WebSocket API 网关。并且可以确认我在 $connect 路由指向的 http 端点上看到日志消息。

但是,如果我使用 socket.io 尝试任何其他类型的应用程序(我从本地 html/vue.js 项目中尝试,从具有域的托管网站中尝试,我从 chrome 浏览器扩展中尝试过),我会收到以下 CORS 拒绝:

access to XMLHttpRequest at 'https://****.execute-api.eu-west-2.amazonaws.com/socket.io/?EIO=3&transport=polling&t=MoRmmeX' from origin '****' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

VM26:1 GET https://****.execute-api.eu-west-2.amazonaws.com/socket.io/?EIO=3&transport=polling&t=MoRmmeX net::ERR_FAILED
Run Code Online (Sandbox Code Playgroud)

当它像这样失败时,不会调用 HTTP 端点,也不会提交任何日志。

我的 WebSocket API 网关已设置为没有授权者。只有默认的 $connect 和 $disconnect 路由。每个指向一个外部 HTTP 端点(现在基本上只是记录)。它与第一次创建时一样。

感谢帮助,谢谢。