使用springboot的过滤器 解决ajax的跨域问题
【摘要】
新建一个过滤器
package com.icode.common.web.handler; import javax.servlet.*;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.util.logging.L...
新建一个过滤器
-
package com.icode.common.web.handler;
-
-
import javax.servlet.*;
-
import javax.servlet.http.HttpServletResponse;
-
import java.io.IOException;
-
import java.util.logging.LogRecord;
-
-
/**
-
* <TODO>
-
*
-
* @className WebFilter
-
* @Author xd
-
* @Date 2018/12/13 19:40
-
**/
-
@javax.servlet.annotation.WebFilter(urlPatterns = "/*", filterName = "myfilter")
-
public class WebFilter implements Filter {
-
@Override
-
public void init(FilterConfig filterConfig) throws ServletException {
-
-
}
-
-
@Override
-
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
-
-
System.out.println("filter");
-
HttpServletResponse response = (HttpServletResponse)servletResponse;
-
//为所有请求添加响应头,以解决ajax跨域问题
-
response.setHeader("Access-Control-Allow-Origin","*");
-
filterChain.doFilter(servletRequest,response);
-
}
-
-
@Override
-
public void destroy() {
-
-
}
-
}
关键代码
-
//为所有请求添加响应头,以解决ajax跨域问题,//值为*或指定的域名。
-
response.setHeader("Access-Control-Allow-Origin","*");
只要加上这行代码即可,前端不需要做任何更改,即可解决浏览器的跨域问题
另外,附上前端ajax请求的代码
-
$.ajax({
-
type : "GET",
-
url : url,
-
dataType:'json',
-
data : param,
-
success : function(data) {
-
callBackFunc(data);
-
},
-
error : function(e) {
-
alert("网络错误");
-
}
-
});
原文地址:http://www.mamicode.com/info-detail-877400.html
文章来源: yexindong.blog.csdn.net,作者:java叶新东老师,版权归原作者所有,如需转载,请联系作者。
原文链接:yexindong.blog.csdn.net/article/details/84994078
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)