在网络应用中使用go的本机http库,我想知道在不发送任何响应的情况下终止不良http需求的idomatic方法是什么。
我目前正在做的是这样:
func SomeController(w http.ResponseWriter, r *http.Request) {
if IsDodgyRequest(r) {
return
}
//rest of the controlloer
}
但是我不确定这是否会导致一些内存泄漏,性能问题或其他问题。因此,感谢您的点击。
答案 0 :(得分:2)
如果从处理程序中返回时未编写任何内容,则HTTP连接将返回200状态代码和空主体。您应该从诸如http.StatusBadRequest
之类的连接中返回错误。无论哪种情况,都不会因此而泄漏。