zoukankan      html  css  js  c++  java
  • 跨域过滤器

    @Component
    public class CorsFilter implements Filter {
    @Override
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException,
    ServletException {
    HttpServletRequest request = (HttpServletRequest) req;
    HttpServletResponse response = (HttpServletResponse) res;
    response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
    response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT, GET");
    response.setHeader("Access-Control-Max-Age", "3600");
    response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
    response.setHeader("Access-Control-Allow-Headers", "token,userId,Content-Type,x-is-mini-program-environment");
    response.setHeader("Access-Control-Allow-Credentials", "true");
    // HttpServletRequestWrapper requestWrapper = new HttpServletRequestWrapper((HttpServletRequest) request) {
    // /**
    // */
    // @Override
    // public String getContentType() {
    // // 先从原本的Request中获取头,如果为空且名字为token,则从参数中查找并返回
    // String contentType = super.getContentType();
    //
    //// if("Content-Type".equals(name)){
    //// String contentType = request.getHeader("Content-Type");
    // return contentType.replace("multipart/form-data,","");
    //// }
    //// return superHeader;
    // }
    // };


    // request.getContentType(); //setAttribute("Content-Type", contentType.replace("multipart/form-data,",""));
    chain.doFilter(request, res);
    }

    @Override
    public void init(FilterConfig filterConfig) {
    }

    @Override
    public void destroy() {
    }
    }

  • 相关阅读:
    2012年"浪潮杯"山东省第三届ACM大学生程序设计竞赛 Fruit Ninja I
    HDU 1045
    ZOJ 3946 Highway Project
    python基础知识
    粘包问题以及解决方法
    socket套接字
    网络编程 互联网协议 tcp原理
    反射 魔法方法 单例模式
    classmethod与staticmethod isinstance与issubclass
    封装 多态
  • 原文地址:https://www.cnblogs.com/-mzh/p/11583598.html
Copyright © 2011-2022 走看看