public class CrosFilter implements Filter {
@Override
public void destroy() {
// TODO Auto-generated method stub
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletResponse httpResponse = (HttpServletResponse) response;
HttpServletRequest httpRequest = (HttpServletRequest) request;
String origin = httpRequest.getHeader(“origin”);
// 直接从request中获取并设置到response中
if (!””.equals(origin) && origin != null) {
httpResponse .addHeader(“Access-Control-Allow-Origin”, origin );
/*Enumeration enum1 = httpRequest.getHeaderNames();
System.out.println(“———–header—————–>”);
while (enum1.hasMoreElements()) {
String key = (String) enum1.nextElement();
String value = httpRequest.getHeader(key);
System.out.println(key + “:” + value);
System.out.println(“
String headers = httpRequest.getHeader(“Access-Control-Request-Headers”);
System.out.println(“dd” + headers);
// 支持所有自定义的方法头
if (!””.equals(headers) && headers != null) {
httpResponse.addHeader(“Access-Control-Allow-Headers”, headers);
// 指定特定的域,带cookie的请求需要全匹配
// httpResponse.addHeader(“Access-Control-Allow-Origin”,
// “http://127.0.0.1:8090”);
// 带cookie请求时需要在请求头增加该参数值
httpResponse .addHeader(“Access-Control-Allow-Credentials”, “true”);
// 指定所有的域,为*时不能满足带cookie的请求
// httpResponse.addHeader(“Access-Control-Allow-Origin”, “*”);
// 指定特定的方法
// httpResponse.addHeader(“Access-Control-Allow-Methods”, “GET”);
// 指定所有的方法
httpResponse .addHeader(“Access-Control-Allow-Methods”, “*”);
// 当有options预检命令时
// httpResponse.addHeader(“Access-Control-Allow-Headers”,
// “Content-Type,x-header1,x-header2”);
// 预检命令的缓存时间
httpResponse .addHeader(“Access-Control-Max-Age”, “3600”);
chain .doFilter(request , response );
@Override
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
Original: https://www.cnblogs.com/maple92/p/8707575.html
Author: Topze
Title: ajax跨域问题
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/582948/
转载文章受原作者版权保护。转载请注明原作者出处!