Golang利用Access-Control-Allow-Origin响应头解决跨域请求问题

时间:2022-08-28 16:05:35

1、在http请求的响应流头部加上如下信息

rw.Header().Set("Access-Control-Allow-Origin", "*")

rw是http.ResponseWriter对象

2、Beego中添加路由过滤器

beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
        AllowAllOrigins:  true,
        AllowMethods:     []string{"*"},
        AllowHeaders:     []string{"Origin", "Authorization", "Access-Control-Allow-Origin"},
        ExposeHeaders:    []string{"Content-Length", "Access-Control-Allow-Origin"},
        AllowCredentials: true,
    }))


这个是一劳永逸的办法,对所有的对控制器的请求都试用。