在Go
http服务器中挂断空闲连接的正确方法是设置读取超时。
无需设置写入超时即可挂断空闲客户端。如果此设置会切断响应,请不要设置或调整它。
如果上传时间较长,请使用连接状态回调来实现单独的空闲和读取超时:
server.ConnState = func(c net.Conn, cs http.ConnState) { switch cs { case http.StateIdle, http.StateNew: c.SetReadDeadline(time.Now() + idleTimeout) case http.StateActive: c.SetReadDeadline(time.Now() + activeTimeout) }}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)