【发布时间】:2016-09-13 01:49:26
【问题描述】:
在我的 GO 项目中,transport.go 文件中出现错误,
mygo/testkit/pkg/http
mygo/testkit/pkg/http pkg\http\transport.go:93:结构文字中的未知 http.Transport 字段“ExpectContinueTimeout”
这是我的newDefaultTransport() 函数,它给出了transport.go 中的错误。
func newDefaultTransport() *http.Transport {
return &http.Transport{
DisableCompression: disableCompression,
DisableKeepAlives: defaultDisableKeepAlives,
MaxIdleConnsPerHost: defaultMaxIdleConnsPerHost,
ResponseHeaderTimeout: defaultResponseHeaderTimeout,
ExpectContinueTimeout: defaultExpectContinueTimeout,
TLSHandshakeTimeout: defaultTLSHandshakeTimeout,
TLSClientConfig: newTLSClientConfig(),
Proxy: http.ProxyFromEnvironment,
Dial: func(network, addr string) (net.Conn, error) {
return NewTimeoutConnDial(network, addr, TCPDialTimeout, TCPKeepAlive, defaultIdleTimeout)
},
}
}
我在这一行得到了错误,
ExpectContinueTimeout: defaultExpectContinueTimeout,
此错误的原因是什么?如何解决这个问题?我是这个 GO 框架的新手。
【问题讨论】:
-
删除该行后编译错误是否消失?对我来说它看起来是正确的,但也许有一个隐藏的或 unicode 潜入其中?
-
@KevinDeenauth :如果我删除或评论这一行,那么它不会给出任何编译错误。
-
没有线索 - 这是一个有效的字段:play.golang.org/p/szXUKuYScx
-
是 defaultExpectContinueTimeout 定义正确,编译器给出这样的错误:“未定义 Y 时,结构文字中的未知 X 字段 'Y'。
-
您是否在使用 gccgo?如果是这样,你能用 gc 重现问题吗?