如何在不发出响应的情况下终止http请求?

时间:2020-07-30 15:38:02

标签: http go request

在网络应用中使用go的本机http库,我想知道在不发送任何响应的情况下终止不良http需求的idomatic方法是什么。
我目前正在做的是这样:

func SomeController(w http.ResponseWriter, r *http.Request) {

    if IsDodgyRequest(r) {
        return
    }
//rest of the controlloer
}

但是我不确定这是否会导致一些内存泄漏,性能问题或其他问题。因此,感谢您的点击。

1 个答案:

答案 0 :(得分:2)

如果从处理程序中返回时未编写任何内容,则HTTP连接将返回200状态代码和空主体。您应该从诸如http.StatusBadRequest之类的连接中返回错误。无论哪种情况,都不会因此而泄漏。