关于跨域的几点处理
来源:互联网 发布:圣兰软件 编辑:程序博客网 时间:2024/06/06 07:40
公司项目之前在做前后端项目 对于ajax跨域问题是这样处理的
1.后端java控制输出流
response.setContentType("text/html;charset=UTF-8");response.addHeader("Access-Control-Allow-Origin","*");
2.前端直接使用jsonp请求
最近新开了一个项目,做一个全局跨域处理
<mvc:cors> <mvc:mapping path="/**" allowed-origins="*" allowed-methods="POST, GET, OPTIONS, DELETE, PUT" allowed-headers="Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With" allow-credentials="true" /></mvc:cors>
上述配置可以针对所有使用springMVC @ResponseBody 的接口
但是在开发过程中,因为使用到拦截器,当不符合条件的时间,需要直接返回数据,终止跳转,所以通过流的形式,直接返回数据。
本来最开始的设置是这样
response.setContentType("text/html;charset=UTF-8");response.setHeader("Access-Control-Allow-Origin","*");//'*'表示允许所有域名访问,可以设置为指定域名访问,多个域名中间用','隔开response.setHeader("Access-Control-Allow-Credentials","true");response.setHeader("Access-Control-Allow-Headers","Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
结果还是不能,报错
Failed to load http://192.168.1.75:8888/api/user/logout: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. Origin 'http://192.168.1.25:8081' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
ajax还是请求跨域报错
因为不想通过写死域名的形式,来限制域名,所以最后的设置如下
response.setHeader("Access-Control-Allow-Origin",request.getHeader("Origin"));这样可以适配所有域名
阅读全文
0 0
- 关于跨域的几点处理
- 关于异常处理的几点建议
- 关于自然语言计算机处理的几点思考
- 关于运行web程序的几点错误处理方法
- 关于软键盘的遮挡布局问题几点处理
- 关于computer view(CV)的几点认识-数字图像处理
- 关于grub的几点
- 关于优化的几点
- 关于接口的几点
- 关于css的几点
- 关于提高效率的几点
- 关于HTTP的几点
- 关于getline的几点
- 关于c++跨平台开发的几点思考
- 异常处理注意的几点问题
- C++异常处理的几点注意事项
- C++文件处理的几点操作
- Python 文件处理的几点注意事项
- 最大子矩阵和
- 设计模式之单例模式
- 使用多线程提高rest服务性能,异步处理rest服务
- 高并发“热点”缓存数据快速“退火”
- 本地电脑--快速备份--dos命令
- 关于跨域的几点处理
- 前端组件Bootstrap4(学习笔记一)
- 后台系统设计:工作流设计剖析
- 当我们谈论计划时,我们在谈论什么?
- 基金指标: beta,alpha,Sharpe Ratio
- 看了那么多干货文章,还是很迷茫,如何迈出产品第一步?
- 微信朋友圈运营指南
- Sprite.Create
- MySQL中特定格式的字符串部分完全匹配查询