【问题标题】:Why is this websocket connection being refused?为什么这个 websocket 连接被拒绝?
【发布时间】:2017-01-16 06:11:39
【问题描述】:

我尝试使用这篇博文 https://www.opsdash.com/blog/slack-bot-in-golang.html 中的 slack-sample 机器人。我已经成功创建了我的 api 令牌,但是我无法连接到 websocket 服务器(rtm.start 请求正常通过)。我收到了错误消息

dial tcp 54.242.95.213:443: connectex: No connection could be made because the target machine actively refused it

我还尝试通过名为 Simple Web Socket Client 的 chrome 应用程序和基于网站的一名测试人员进行连接。两者都很好,我可以建立连接并可以发送数据。

我在代理后面,但我只有 golang 的 websocket.Dial 功能有问题。

有人知道为什么会这样吗?

我使用:
- Windows 7 SP1 x64
- Golang 1.7.1 windows/amd64

问候 零陵香豆

【问题讨论】:

  • 可以用http连接ws吗?该示例中的 url 使用 http
  • 原来是你can。您是否正在阅读来自 http 调用的响应?看起来that 为您提供了要连接到的 wss url
  • http 调用在哪里?
  • 博客例子已经给了我一个wss地址!
  • 你能发布你的确切代码吗?我无法连接到该 IP 地址。

标签: go proxy websocket slack


【解决方案1】:

如果您使用gorilla/websocket,它可以使用代理。来自issue 107

import "net/http"

...

var dialer = websocket.Dialer{
    Proxy: http.ProxyFromEnvironment,
}

如果你使用golang.org/x/net,你应该切换到gorilla/websocket。

【讨论】:

  • 谢谢,我会试试 gorilla 的 websocket 库
猜你喜欢
  • 1970-01-01
  • 2014-09-02
  • 2016-08-16
  • 1970-01-01
  • 1970-01-01
  • 2017-08-08
  • 2014-09-08
  • 1970-01-01
  • 2018-06-06
相关资源
最近更新 更多