小编典典

如何在 http.ResponseWriter 上设置 HTTP 状态代码

go

我如何设置 HTTP 状态代码http.ResponseWriter(例如设置为 500 或 403)?

我可以看到请求通常附有 200 的状态代码。


阅读 57

收藏
2021-11-17

共1个答案

小编典典

使用http.ResponseWriter.WriteHeader. 从文档:

WriteHeader 发送带有状态代码的 HTTP 响应标头。如果未显式调用 WriteHeader,则首次调用 Write 将触发隐式 WriteHeader(http.StatusOK)。因此显式调用 WriteHeader 主要用于发送错误代码。

例子:

func ServeHTTP(w http.ResponseWriter, r *http.Request) {
    w.WriteHeader(http.StatusInternalServerError)
    w.Write([]byte("500 - Something bad happened!"))
}
2021-11-17