New file |
| | |
| | | package com.dy.common.webFilter; |
| | | |
| | | import java.io.IOException; |
| | | |
| | | import jakarta.servlet.*; |
| | | import jakarta.servlet.http.HttpServletRequest; |
| | | import jakarta.servlet.http.HttpServletResponse; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | /** |
| | | * SpringBoot 跨域处理过滤器 |
| | | */ |
| | | @Slf4j |
| | | @Component |
| | | public class CROSFilter implements Filter { |
| | | |
| | | @Override |
| | | public void init(FilterConfig filterConfig) throws ServletException { |
| | | } |
| | | |
| | | @Override |
| | | public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) |
| | | throws IOException, ServletException { |
| | | HttpServletResponse response = (HttpServletResponse) res; |
| | | |
| | | //HttpServletRequest reqs = (HttpServletRequest) req; |
| | | /* |
| | | * 跨域设置允所有请求跨域 |
| | | * 如果允许指定的客户端跨域设置: http://127.0.0.1:8020 |
| | | */ |
| | | response.setHeader("Access-Control-Allow-Origin","*"); |
| | | response.setHeader("Access-Control-Allow-Credentials", "true"); |
| | | response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); |
| | | response.setHeader("Access-Control-Max-Age", "3600"); |
| | | response.setHeader("Access-Control-Allow-Headers", "Content-Type"); |
| | | if (((HttpServletRequest) req).getMethod().equals("OPTIONS")) { |
| | | response.getWriter().println("ok"); |
| | | return; |
| | | } |
| | | |
| | | chain.doFilter(req, res); |
| | | } |
| | | |
| | | @Override |
| | | public void destroy() { |
| | | } |
| | | |
| | | } |