如何为静态文件设置 http 标头?

Posted

技术标签:

【中文标题】如何为静态文件设置 http 标头?【英文标题】:How to set http headers for static files? 【发布时间】:2017-08-24 03:06:58 【问题描述】:

我使用 gin-gonic 的 r.Static("files", "./files") 来提供 files 目录中的所有文件。有没有办法为这些文件请求设置标头以便我可以允许 CORS?

【问题讨论】:

***.com/questions/29418478/go-gin-framework-cors/… and github.com/itsjamie/gin-cors and skarlso.github.io/2016/02/02/doing-cors-in-go-with-gin-and-json 【参考方案1】:

an official Gin middleware 提供此功能。

一个好的起始模板(来自他们的例子)

func main() 
    router := gin.Default()
    // - No origin allowed by default
    // - GET,POST, PUT, HEAD methods
    // - Credentials share disabled
    // - Preflight requests cached for 12 hours
    config := cors.DefaultConfig()
    config.AllowOrigins = []string"http://google.com"
    config.AddAllowOrigins("http://facebook.com")
    // config.AllowOrigins == []string"http://google.com", "http://facebook.com"

    router.Use(cors.New(config))
    router.Run()

【讨论】:

以上是关于如何为静态文件设置 http 标头?的主要内容,如果未能解决你的问题,请参考以下文章

即使在提供静态文件时,仍然设置使用 PHP 设置的 HTTP 标头

如何为使用 xib 用户界面创建的 TableViewController 设置静态表视图

Tomcat 7.0.35 为静态 HTML 文件设置 HTTP 响应标头 Content-Type 字符集

如何为CentOS 7配置静态IP地址

如何为CentOS 7配置静态IP地址

在 Tomcat 中设置 CORS 标头