zoukankan      html  css  js  c++  java
  • java 支持跨域

    web.xml中配置

    <filter>
    <filter-name>SimpleCORSFilter</filter-name>
    <filter-class>com.quanzhen.utils.SimpleCORSFilter</filter-class>
    <init-param>
    <param-name>IsCross</param-name>
    <param-value>true</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>SimpleCORSFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter>

    创建对应的类
    SimpleCORSFilter
    package com.quanzhen.utils;

    import javax.servlet.*;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;

    public class SimpleCORSFilter implements Filter {
    private boolean isCross = false;


    public void destroy() {
    isCross = false;
    }

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
    throws IOException, ServletException {
    if (isCross) {
    HttpServletRequest httpServletRequest = (HttpServletRequest) request;
    HttpServletResponse httpServletResponse = (HttpServletResponse) response;
    System.out.println("拦截请求: " + httpServletRequest.getServletPath());
    httpServletResponse.setHeader("Access-Control-Allow-Origin", "*");
    httpServletResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
    httpServletResponse.setHeader("Access-Control-Max-Age", "0");
    httpServletResponse.setHeader("Access-Control-Allow-Headers",
    "Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token");
    httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true");
    httpServletResponse.setHeader("XDomainRequestAllowed", "1");
    }
    chain.doFilter(request, response);
    }


    public void init(FilterConfig filterConfig) throws ServletException {
    String isCrossStr = filterConfig.getInitParameter("IsCross");
    isCross = isCrossStr.equals("true") ? true : false;
    System.out.println(isCrossStr);
    }

    }


  • 相关阅读:
    调度算法的评价指标
    进程调度的时机 切换与过程调度方式
    处理机调度 概念和层次
    线程概念 多线程模型
    进程通信
    进程的状态与转换
    进程的定义
    系统调用
    面试题3
    第2章Arduino UNO板结构说明
  • 原文地址:https://www.cnblogs.com/foreverstudy/p/10494513.html
Copyright © 2011-2022 走看看