Open shownb opened 6 years ago
最近一个项目 go的http请求会带Connection: Keep-Alive 用来请求长连接,达到复用和连接池的目的。 但是如果服务端返回Connection: Keep-Alive,但又不讲信用或者网络问题,把连接关闭了。就会产生问题。 一般来说,go的transport.go会检查这个socket是不是关闭了,会自己关闭连接。问题在于你在它检查之前,newrequest了一个东西,然后去读,就会出现错误。
解决方法:遇到eof,重新请求?
最近一个项目 go的http请求会带Connection: Keep-Alive 用来请求长连接,达到复用和连接池的目的。 但是如果服务端返回Connection: Keep-Alive,但又不讲信用或者网络问题,把连接关闭了。就会产生问题。 一般来说,go的transport.go会检查这个socket是不是关闭了,会自己关闭连接。问题在于你在它检查之前,newrequest了一个东西,然后去读,就会出现错误。
解决方法:遇到eof,重新请求?