server端如何提前结束一个http请求

smoothie · · 4043 次点击
找到了一种方法,测试有效,只是不知道会不会有其他问题 http.ResponseWriter实现了http.Hijacker的接口,Hijacker中的Hijack方法返回一个net.Conn对象,利用net.Conn的Close方法关闭连接 ``` func server(w http.ResponseWriter, r *http.Request) { //正常的处理逻辑 //下面关闭连接 if hj, ok := w.(http.Hijacker); ok { conn, _, _ := hj.Hijack() conn.Close() } //连接关闭后的处理,比如记录日志 } ```
#1
更多评论
应该没问题camlistore中有类似用法
#2