我在 AWS EC2 实例上部署了一个 websocket 服务器。我能够连接到这个 websocket,而 Python 脚本(使用 websocket.create_connection(没有任何问题,但是在 Chrome 中运行 Javascript 行var ws = new Websocket(.....)
时出现 403 错误:Error during WebSocket handshake: Unexpected response code: 403
.
我确保更改 EC2 实例上的安全组以允许所有入站和出站流量。
所有建议都表示赞赏!
编辑:弄清楚这里发生了什么。这是我的 Go websocket 服务器中默认源检查功能的问题。
这是大猩猩/websocket软件包的服务器端问题。必须添加此 CheckOrigin 函数:
var upgrader = websocket.Upgrader{
ReadBufferSize: 1024,
WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool {return true},
}