登录
首页 >  Golang >  Go问答

默认的HTTP标头在Web API的响应中

来源:stackoverflow

时间:2024-03-24 16:51:32 175浏览 收藏

在 Golang Web API 中使用 net/http 路由器时,无法直接为所有响应设置默认标头。但是,可以创建一个包装函数来实现这一功能。该包装函数将接受一个处理函数作为参数,并在调用该处理函数之前为响应设置默认标头。

问题内容

我正在尝试在我的 Golang Web api 中设置默认标头。我使用的是 Go 自带的 net/http 路由器。我可以找到很多如何做到这一点的例子:

  • 使用其他一些路由器。
  • 对每个回复都这样做(我已经这样做了)

是否有一种方法可以为使用 net/http 的所有响应设置默认标头?


解决方案


创建一个包装函数。像这样的东西:

package main

import "net/http"

func SetDefaultHeaders(handler func(w http.ResponseWriter, r *http.Request)) func(w http.ResponseWriter, r *http.Request) {
    return func(w http.ResponseWriter, r *http.Request) {
        // Set default headers
        handler(w, r)
    }
}

func main() {
    http.HandleFunc("/", SetDefaultHeaders(func(w http.ResponseWriter, r *http.Request) {
        // ...
    }))
}

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《默认的HTTP标头在Web API的响应中》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>