beego/golang 添加跨域访问
背景:使用beego开发接口,前端开发调用时,现实因为跨域访问导致失败。 一般api开发使用nginx作为代理转发,配置跨域访问直接修改nginx配置就行,由于自己不想使用nginx,所以直接修改beego配置。包下载安装 cors;go getgithub.com/astaxie/beego/plugins/cors说明文档。https://godoc.org/github....
·
背景:
使用beego开发接口,前端开发调用时,现实因为跨域访问导致失败。 一般api开发使用nginx作为代理转发,配置跨域访问直接修改nginx配置就行,由于自己不想使用nginx,所以直接修改beego配置。
包
下载安装 cors;
go get github.com/astaxie/beego/plugins/cors
说明文档。
https://godoc.org/github.com/astaxie/beego/plugins/cors
配置代码
放在 main.go
中
func main() {
if beego.BConfig.RunMode == "dev" {
beego.BConfig.WebConfig.DirectoryIndex = true
beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
}
beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
AllowOrigins: []string{"http://ip:port"},
AllowMethods: []string{"PUT", "PATCH", "POST", "GET"},
AllowHeaders: []string{"Origin"},
ExposeHeaders: []string{"Content-Length"},
AllowCredentials: true, }))
beego.Run()
defer fmt.Println("end main.....")
}
在 AllowOrigins
中添加 web 前端开发机器的 ip与port 即可。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)