javaEE跨域过滤器
来源:互联网 发布:倩女幽魂有mac版吗 编辑:程序博客网 时间:2024/05/29 19:10
import org.springframework.web.filter.OncePerRequestFilter;import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.util.Arrays;import java.util.HashSet;import java.util.Set;public class CorsFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { boolean isOpenAllowDomain = false;//是否开启域名列表,默认不开启,自己改成true就开启了 if (isOpenAllowDomain) { String[] allowDomain = { "http://192.168.0.77:8888", "http://localhost:8080", "http://127.0.0.1:8080", "http://localhost" }; Set<String> allowedOrigins = new HashSet<String>(Arrays.asList(allowDomain)); String originHeader = request.getHeader("Origin"); System.out.println("-------------------"+originHeader); if (!originHeader.startsWith("http") || allowedOrigins.contains(originHeader)) { addAllowedOriginHeader(request, response); } }else{ addAllowedOriginHeader(request, response); } filterChain.doFilter(request, response); } public void addAllowedOriginHeader(HttpServletRequest request, HttpServletResponse response) { response.addHeader("Access-Control-Allow-Origin", request.getHeader("Origin")); if (request.getHeader("Access-Control-Request-Method") != null && "OPTIONS".equals(request.getMethod())) { // CORS "pre-flight" request response.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE,OPTIONS"); response.addHeader("Access-Control-Allow-Headers", "X-Requested-With,Origin,Content-Type, Accept"); response.setHeader("Access-Control-Allow-Credentials", "true"); } response.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE,OPTIONS"); response.addHeader("Access-Control-Allow-Headers", "X-Requested-With,Origin,Content-Type, Accept"); response.setHeader("Access-Control-Allow-Credentials", "true"); }}
阅读全文
0 0
- javaEE跨域过滤器
- JavaEE过滤器
- java-javaee-过滤器
- JavaEE过滤器处理原理
- javaee之过滤器
- javaEE之标签和过滤器
- JavaEE学习之过滤器 Filter
- javaee中过滤器的理解
- JavaEE学习14--过滤器filter
- javaee学习之路(六)Servlet过滤器
- JavaEE 添加简单的日志过滤器
- javaEE 使用过滤器压缩响应内容
- javaee之监听器和过滤器练习
- javaEE(Listener监听器和Filter过滤器)
- JAVAEE之--------过滤器设置是否缓存(Filter)
- javaEE框架类——过滤器(Filter)
- 【JavaEE学习笔记】文件上传与下载、监听器、过滤器
- 过滤器处理跨域问题
- JSON解析异常-org.json.JSONException: Expected a ':' after a key
- AngularJs路由$依赖注入
- Android Mediaplayer+sufaceView
- 自定义的动画
- int为什么不是2的32次方
- javaEE跨域过滤器
- JVM类加载器详解
- AngularJS 排序
- 原始套接字实现--arp欺骗
- GreenDao的简单使用
- 【第十二周项目2】Kruskal算法的验证
- vue学习总结
- angularjs查询删除 过滤敏感信息
- 多线程下载