• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
没心情
Beauty begins the moment you decide to be yourself.
博客园    首页    新随笔    联系   管理    订阅  订阅
Springmvc-跨域请求-后端设置)

最近在开发UIAPP的项目,出现了文件上传,请求出现跨域问题,在后台进行了相应的设置,因为项目本身的框架是Spring-MVC,所以使用的配置过滤器的方案,供各位参考

1. web.xml 配置


  <filter>
    <filter-name>crossFilter</filter-name>
    <filter-class>com.cd.filter.CrossFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>crossFilter</filter-name>
    <url-pattern>/* </url-pattern>
  </filter-mapping>
  
  • filter-class 为过滤器实现类的路径,看自己包的位置改一下
  • url-pattern 为过滤的路径,我设置的为所有路径,根据自己情况设定

2. 过滤器实现类

/**
 * @author 隐形的稻草人 by 2020-7-1 15:00:14
 */
public class CrossFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }
    
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
        HttpServletResponse res = (HttpServletResponse) servletResponse;
        HttpServletRequest req = (HttpServletRequest) servletRequest;
        String origin = req.getHeader("Origin");
        if(!org.springframework.util.StringUtils.isEmpty(origin)) {
            res.addHeader("Access-Control-Allow-Origin", origin);
        }
        res.addHeader("Access-Control-Allow-Methods", "*");
        res.addHeader("Access-Control-Allow-Credentials", "true");
        res.addHeader("Access-Control-Allow-Headers", "content-type");
        res.addHeader("Access-Control-Allow-Headers", "Authorization");
        filterChain.doFilter(servletRequest, servletResponse);
    }

    @Override
    public void destroy() {

    }
}

上文为本程序猿小学生在项目开发过程中的一些问题解决方案,仅供参考,不喜勿喷,欢迎评论交流!

posted on 2020-07-03 09:30  No-心情  阅读(406)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3