假如有 api.example.com
的站点
有俩个项目 a.example.com
和 b.example.com
他们都需要跨域访问 api 服务器
那么都知道"Access-Control-Allow-Origin", "*"
这样表示全部跨域"Access-Control-Allow-Origin", "http://a.example.com"
这样表示a站可以访问
那么如何让a和b站都可以跨站
假如有 api.example.com
的站点
有俩个项目 a.example.com
和 b.example.com
他们都需要跨域访问 api 服务器
那么都知道"Access-Control-Allow-Origin", "*"
这样表示全部跨域"Access-Control-Allow-Origin", "http://a.example.com"
这样表示a站可以访问
那么如何让a和b站都可以跨站
既然你知道用Access-Control-Allow-Origin来控制,那还有什么问题么?
将a b两个站的server中的api都加上Access-Control-Allow-Origin就好了
Origin := r.Header.Get("Origin")
if Origin != "" {
w.Header().Add("Access-Control-Allow-Origin", Origin)
w.Header().Add("Access-Control-Allow-Methods", "POST,GET,OPTIONS,DELETE")
w.Header().Add("Access-Control-Allow-Headers", "x-requested-with,content-type")
w.Header().Add("Access-Control-Allow-Credentials", "true")
}
根据3楼所述,自己控制就好了
7 回答5.3k 阅读
6 回答6.9k 阅读✓ 已解决
4 回答2.3k 阅读
2 回答798 阅读✓ 已解决
1 回答2k 阅读✓ 已解决
1 回答3.4k 阅读
1 回答1k 阅读✓ 已解决
php 全局变量server可以获取当前访问的域名,然后你在设置允许访问的,我就是这么干的