AWS websocket 服务器:从浏览器连接时出现 403 错误,Python 正常
AWS websocket server: 403 error when connecting from browser, fine from Python
我在 AWS EC2 实例上部署了一个 websocket 服务器。 Python 脚本(使用 websocket.create_connection)可以毫无问题地连接到这个 websocket,但是当 运行 Javascript 行 [=11] 时我收到 403 错误=] 在 Chrome 中:Error during WebSocket handshake: Unexpected response code: 403
。
我确保更改 EC2 实例上的安全组以允许所有入站和出站流量。
感谢所有建议!
编辑:弄清楚这里发生了什么。这是我的 Go websocket 服务器中默认来源检查功能的问题。
这是 server-side 包的 gorilla/websocket 问题。必须添加此 CheckOrigin 函数:
var upgrader = websocket.Upgrader{
ReadBufferSize: 1024,
WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool {return true},
}
我在 AWS EC2 实例上部署了一个 websocket 服务器。 Python 脚本(使用 websocket.create_connection)可以毫无问题地连接到这个 websocket,但是当 运行 Javascript 行 [=11] 时我收到 403 错误=] 在 Chrome 中:Error during WebSocket handshake: Unexpected response code: 403
。
我确保更改 EC2 实例上的安全组以允许所有入站和出站流量。
感谢所有建议!
编辑:弄清楚这里发生了什么。这是我的 Go websocket 服务器中默认来源检查功能的问题。
这是 server-side 包的 gorilla/websocket 问题。必须添加此 CheckOrigin 函数:
var upgrader = websocket.Upgrader{
ReadBufferSize: 1024,
WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool {return true},
}