Beego服务器中出现'No'Access-Control-Allow-Origin'header...”错误,是否配置错误?
创始人
2024-11-27 22:30:18
0

出现该错误的原因是因为跨域访问请求的source与服务器端的Access-Control-Allow-Origin不一致,需要在Beego服务器端进行相关配置。以下是一些代码示例,可以作为参考:

  1. 在路由器路由函数中添加以下代码,可以通过允许所有来源实现跨域访问,但这并不安全:

func (this RouterController) Get() { this.Ctx.ResponseWriter.Header().Set("content-type", "application/json") this.Ctx.ResponseWriter.Header().Set("Access-Control-Allow-Origin", "") // your code here }

  1. 也可以将设置Access-Control-Allow-Origin的代码封装到一个中间件中:

package middleware

import ( "github.com/astaxie/beego/context" )

func Cors() func(ctx *context.Context) { return func(ctx *context.Context) { ctx.Output.Header("Access-Control-Allow-Origin", "http://localhost:3000") // 更改此处为你的源地址 ctx.Output.Header("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT, DELETE") ctx.Output.Header("Access-Control-Allow-Credentials", "true") ctx.Output.Header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization") if ctx.Request.Method == "OPTIONS" { ctx.Output.Status = 200 } } }

  1. 在Beego的配置文件中添加cors参数:

"web" : { "httpport" : 8080, "enablegzip" : false, "staticdir" : "static", "templatepath" : "views", "sessionon" : true, "sessiongcmaxlifetime" : 3600, "sessionprovider" : "memory", "sessionname" : "sessionid", "sessioncookiepath" : "/", "sessioncookielifeetime" : 0, "cors": { // 添加此处配置 "alloworigins": ["http://localhost:3000"], "allowmethods": ["POST", "GET", "OPTIONS", "PUT", "DELETE"], "allowheaders": ["Origin", "Content-Type", "AccessToken", "X-CSRF-Token", "Authorization"], "exposeheaders": ["Content-Length", "Access-Control-Allow-Origin"], "maxage": 1728000 } }

以上就是解决'No 'Access-Control-Allow-Origin' header...”问题的几种方法,可以根据实际情况进行选择。

相关内容

热门资讯

一分钟辅助!wepoker游戏... 一分钟辅助!wepoker游戏下载,pokemmo脚本,资料教程(有挂方法)1、在wepoker游戏...
四分钟辅助!约局吧开挂神器是真... 四分钟辅助!约局吧开挂神器是真的吗,哈糖大菠萝开挂,教材教程(揭秘有挂)1)约局吧开挂神器是真的吗辅...
8分钟辅助!wpk辅助器,wp... 8分钟辅助!wpk辅助器,wpk可以作弊吗,法子教程(有挂助手)1、让任何用户在无需wpk可以作弊吗...
9分钟辅助!aapoker如何... 9分钟辅助!aapoker如何设置胜率,aapoker破解侠是真的吗,指引教程(有挂教学)1、aap...
1分钟辅助!wejoker黑侠... 1分钟辅助!wejoker黑侠辅助器,wepoker软件安装包,讲义教程(新版有挂)1、全新机制【w...
六分钟辅助!来玩德州破解器,s... 六分钟辅助!来玩德州破解器,sohoo poker辅助,步骤教程(有挂方法)1、操作简单,无需来玩德...
4分钟辅助!德州圈脚本,wep... 4分钟辅助!德州圈脚本,wepoker透视功能下载,学习教程(竟然有挂)1、操作简单,无需wepok...
6分钟辅助!wepoker插件... 6分钟辅助!wepoker插件程序激活码,wepoker透视脚本免费app,窍门教程(有挂解密)1、...
五分钟辅助!aapoker能控... 五分钟辅助!aapoker能控制牌吗,hhpoker透视脚本,学习教程(有挂方针)1、玩家可以在aa...
三分钟辅助!智星菠萝可以辅助吗... 三分钟辅助!智星菠萝可以辅助吗,德州真人透视脚本,绝活儿教程(有挂方法)三分钟辅助!智星菠萝可以辅助...