#Beego 跨域
注册过滤器
beego.InsertFilter("/*", beego.BeforeRouter, UrlManager)
添加过滤器
var UrlManager = func(ctx *context.Context) {
//跨域处理
ctx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", ctx.Request.Header.Get("Origin"))
ctx.ResponseWriter.Header().Set("Access-Control-Allow-Credentials","true")
ctx.ResponseWriter.Header().Set("Access-Control-Allow-Headers","Content-Type, Content-Length, Authorization, Accept, X-Requested-With")
ctx.ResponseWriter.Header().Set("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS")
ctx.ResponseWriter.Header().Set("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS")
//判断是否
_, ok := ctx.Input.Session("AdminID").(int)
if !ok && ctx.Input.URL() != "/login" {
ctx.Output.SetStatus(401)
data := map[string]interface{}{
"result": 1,
}
_ = ctx.Output.JSON(data, true, true)
}
}