问题描述
在使用golang 写websocket服务时,不可避免需要使用gorilla/websocket包.
在官方提供的example示例中,监听的ip都是localhost, 但是当需要对外提供服务时,
我们需要把ip改为0.0.0.0或者具体的ip。
此时如果使用gorilla/websocket包写客户端的话,使用默认的DefaultDialer去连接具体的ip,
客户端报错Forbidden
解决办法
通过查看gorilla/websocket包源码, 发现DefaultDialer的结构为
|
|
ProxyFromEnvironment函数会读取环境变量里的http_proxy和https_proxy代理, 我的测试环境是设置了代理,所以会报错。
解决方法是不使用DefaultDialer,而是使用Dialer结构体.
|
|