我在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服务器中的默认原点检查功能的问题。
答案 0 :(得分:1)
这是gorilla / websocket包的服务器端问题。不得不添加这个CheckOrigin函数:
var upgrader = websocket.Upgrader{
ReadBufferSize: 1024,
WriteBufferSize: 1024,
CheckOrigin: func(r *http.Request) bool {return true},
}