美文网首页
Golang的Gin框架解决跨域问题

Golang的Gin框架解决跨域问题

作者: 柠檬信息技术有限公司 | 来源:发表于2019-04-25 09:05 被阅读0次

首先创建一个返回gin.HandlerFunc的函数

func cors() gin.HandlerFunc {
    return func(c *gin.Context) {
        method := c.Request.Method

        c.Header("Access-Control-Allow-Origin", "*")
        c.Header("Access-Control-Allow-Headers", "Content-Type,AccessToken,X-CSRF-Token, Authorization, Token")
        c.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS")
        c.Header("Access-Control-Expose-Headers", "Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers, Content-Type")
        c.Header("Access-Control-Allow-Credentials", "true")
        if method == "OPTIONS" {
            c.AbortWithStatus(http.StatusNoContent)
        }
        c.Next()
    }
}

然后在能拿到*gin.Engine对象的地方调用下面的方法即可

engine.Use(cors())

相关文章

网友评论

      本文标题:Golang的Gin框架解决跨域问题

      本文链接:https://www.haomeiwen.com/subject/juaogqtx.html