另外使用 http.TimeoutHandler 是否有意义如果我已经设置了 server's读超时和写超时?似乎这种情况是相互排斥的?
最佳答案
这两个处理 http 请求/响应生命周期的不同方面。
http.TimeoutHandler
用于限制http.Handler 的执行时间。如果 http.Handler
没有在规定的时间内完成,它将返回 503
状态代码给客户端。
同时,ReadTimeout
和 WriteTimeout
处理网络 I/O 超时,即读取/写入请求/响应正文所需的时间到您的客户端 分别。
因此,http.TimeoutHandler
处理您的处理程序(处理 http 请求的代码块)需要在设定的时间内完成的情况,方法是包装您的原始处理程序。而 http.WriteTimeout
或 http.ReadTimeout
当您不想无限期地等待请求/响应的网络读/写时使用。
关于go - 使用 http.TimeoutHandler 或 ReadTimeout/WriteTimeout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51258952/