习惯性的方法来超时websocket.Dial去?

时间:2013-04-08 18:29:39

标签: go

我的代码如下:

_, err := websocket.Dial("wss://remote-server", "", "http://localhost")

if (err == nil) {
  fmt.Println("Worked!")
} else {
  fmt.Println("Fail")
}

remote-server关闭时,超时需要60秒。我找到websocket.SetDeadlinehttp://godoc.org/code.google.com/p/go.net/websocket#Conn.SetDeadline),但我还没有连接来应用它。我可以将Config传递给DialConfig,但我无法确定指定超时的位置。

我发现https://code.google.com/p/go-wiki/wiki/Timeouts,这是我必须这样做的吗?如何从goroutine正确传递错误代码?

1 个答案:

答案 0 :(得分:2)

我还没有使用过去的websocket包,但是我可以从文档中推断出应该使用net.DialTimeout(...)加上websocket.NewClient(...)

source of DialConfig使用相同的方法,但仅限于net.Dial。