解决 ajax请求 跨域问题
来源:互联网 发布:淘宝打假赚钱 编辑:程序博客网 时间:2024/06/05 15:31
解决 ajax请求 跨域问题
错误信息
在前端用ajax 请求后端 接口 时候 出现下面错误时。
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. The response had HTTP status code 403.
什么是跨域?
简单的说即为浏览器限制访问A站点下的js代码对B站点下的url进行ajax请求。
CORS协议
CORS是一个W3C标准,全称是”跨域资源共享”(Cross-origin resource sharing)
怎么解决?
定义一个Filter
importorg.springframework.stereotype.Component;importjavax.servlet.*;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;/***Created by Wuhuahui on 2016/12/13.*/@ComponentPublic class CorsFilter implements Filter{ @Override Publicvoid init (FilterConfigfilterConfig) throws ServletException{ } @Override public void doFilter (ServletRequestservletRequest, ServletResponseservletResponse, FilterChainfilterChain)throws IOException ,ServletException{ HttpServletResponseresponse=(HttpServletResponse)servletResponse; Stringorigin=(String)servletRequest.getRemoteHost()+":"+servletRequest.getRemotePort(); response.setHeader("Access-Control-Allow-Origin","*"); response.setHeader("Access-Control-Allow-Methods","POST,GET,OPTIONS,DELETE"); response.setHeader("Access-Control-Max-Age","3600"); response.setHeader("Access-Control-Allow-Headers","x-requested-with,Authorization,Origin,Content-Type,Accept"); response.setHeader("Access-Control-Allow-Credentials","true"); filterChain.doFilter(servletRequest,servletResponse); } @Override Public void destroy(){ }}
在web.xml中配置
<filter><filter-name>cors</filter-name><filter-class>top.annwz.base.filter.CorsFilter</filter-class></filter><filter-mapping><filter-name>cors</filter-name><url-pattern>/*</url-pattern></filter-mapping>
脚注
生成一个脚注1.
目录
用 [TOC]
来生成目录:
- 解决 ajax请求 跨域问题
- 错误信息
- 什么是跨域
- CORS协议
- 怎么解决
- 脚注
- 目录
- 错误信息
- 这里是 脚注 的 内容. ↩
0 0
- Nginx解决ajax跨域请求问题
- 解决ajax跨域请求问题
- 解决Ajax请求跨域问题
- 解决 ajax请求 跨域问题
- 解决Ajax跨域请求问题
- 解决ajax请求跨域问题
- ajax解决跨域请求问题
- 解决同域Nginx ajax 请求跨域的问题
- 通过jsonp解决ajax的跨域请求问题
- Tomcat下 解决Ajax请求跨域的问题
- ajax请求跨域问题-通过jsonp方式解决
- 用iframe设置代理解决ajax跨域请求问题
- 跨域解决 & ajax post 请求springmvc ctr 问题
- 解决JQuery的Ajax请求跨域问题
- 通过jsonp解决ajax的跨域请求问题
- 解决ajax跨域请求数据cookie丢失问题
- 通过jsonp解决ajax的跨域请求问题
- Spring boot 完美解决ajax跨域请求问题
- lua的包库
- 神奇的Annotation
- struts.xml配置详解
- https连接都发生了什么
- MySql Workbench的E-R图设计小技巧
- 解决 ajax请求 跨域问题
- 嵌入式学习笔记之gcc编译
- screen capture using CGDisplayStreamCreateWithDispatchQueue
- Redis数据库的备份与恢复
- layer中type=2的一些使用方法(添加成功后才关闭路由、刷新页面列表)
- removeInvalidParentheses
- opencv学习笔记(十)画直线、矩形、圆形、椭圆以及多边形程序
- css 样式中类之间有空格和无空格的区别
- Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用]