设置所有处理程序的标头

ChunkCoder:

现在看起来像这样

func cacheHandler(h http.Handler) http.Handler {
    return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
        w.Header().Set("Cache-Control", "max-age=1800")
        h.ServeHTTP(w, r)
    })
}
http.Handle("/", cacheHandler(http.FileServer(http.Dir("./template/index"))))
http.HandleFunc("/json", sendJSONHandler)
http.HandleFunc("/contact", contactHandler)
http.Handle("/static/", http.StripPrefix("/static/", cacheHandler(http.FileServer(http.Dir("./template/static")))))
http.ListenAndServe(":80", nil)

有没有办法一次将缓存标头设置给所有处理程序?

松饼上衣:

包装多路复用器

  http.ListenAndServe(":80", cacheHandler(http.DefaultServeMux))

而不是单个处理程序。

请注意,ListendAndServe使用http.DefaultServeMux的处理程序时的处理程序参数是nil另外,将http.Handlehttp.HandleFunc处理程序添加到http.DefaultServeMux

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在go中为多个处理程序设置HTTP标头

HTTP响应标头被覆盖。哪里可以在apache中设置所有HTTP响应标头?

如果已设置标头,如何使用自定义的HTTP处理程序/中间件?

获取在Tornado请求处理程序中设置的当前响应标头

带有节点的Express应用程序中的“错误:发送标头后无法设置标头”

没有为所有组件设置标头React-Native

使用AngularJs从响应中检索标头并在所有请求上进行设置

为Flutter HTTP请求中的所有请求设置默认标头的最佳方法

如何在Koa.js中为所有响应设置标头?

在 Web 视图 iOS + Swift 3 中为所有后续 url 调用设置 Http 标头

我可以为所有AJAX请求设置全局标头吗?

为所有截击请求设置自定义标头

如何为所有API端点全局设置http.ResponseWriter Content-Type标头?

NGINX-如何为所有虚拟主机设置到期标头?

为Angular中除OPTIONS之外的所有请求设置默认标头

如何为Ionic 2中的所有请求设置默认的Http标头?

如何为路由组中的所有请求设置标头

Firebase“未处理的拒绝”和“设置标头后无法设置标头”JavaScript 错误

所有 API 调用都包含 VodaPay 小程序的 Referer 标头吗?

错误:发送标头后无法设置标头-在Express Controller中正确处理错误

未处理的承诺拒绝:发送后无法设置标头

Launcpad标头后退按钮的事件处理程序

从图像错误处理程序中读取响应标头

在AngularJS中设置应用程序范围的HTTP标头

如何使用FOSRestBundle在Symfony 4 Controller的所有方法中设置自定义标头?

由于已设置所有响应标头,但CORS策略将不起作用,但仍会收到此错误

如何在除root以外的所有子文件夹中设置410响应标头?

RabbitMQ标头交换路由:匹配所有列出的标头

标头背景图片未涵盖所有标头内容