跨域踩到过的N次坑,其实是在这个坑这跌倒了,下次还是在这跌倒的问题

由于各种原因吧,前端项目和后端项目大多数情况下不会部署到一台服务器上,这就带来了跨域的问题,让程序员很难受很难受,于是配置各种Acess-Controll-乱七八糟的东西,下面我整理几个

 

//指定允许其他域名访问
'Access-Control-Allow-Origin:http://*.*.*.*'  //一般用法(*,指定域,动态设置),3是因为*不允许携带认证头和cookies
//是否允许后续请求携带认证信息(cookies),该值只能是true,否则不返回
'Access-Control-Allow-Credentials:true'
//预检结果缓存时间,也就是上面说到的缓存啦
'Access-Control-Max-Age: 1800'
//允许的请求类型
'Access-Control-Allow-Methods:GET,POST,PUT,POST'
//允许的请求头字段
'Access-Control-Allow-Headers:x-requested-with,content-type'

但是但是但是,有时候吧后台可能会在header里面自定义一些东西,比如把业务信息返回来 errordec ,errorno 之类的,这样前台可以在响应的过滤器里拿到header里的错误信息,

如果不配置,就是这个德行看

如果是这样像上面的配置就不够用了,你就去查吧,累死你(大神请无视),这时候的配置参数就要闪亮登场了!!!看 快看他在下面👇

Access-Control-Expose-Headers 对就是它!

它配置的值就是上面提到的errordesc,errorno,这时候客户端就能拿到了,不信你就去试试!

行了也该睡觉了。拜拜👋👋!

posted @ 2020-02-21 23:14  崔国亮  阅读(93)  评论(0)    收藏  举报