已解决
java后端请求过滤options方式,亲测有效
来自网友在路上 160860提问 提问时间:2023-10-29 00:30:37阅读次数: 60
最佳答案 问答题库608位专家为你答疑解惑
前端每次发出post 请求时,浏览器会默认请求2次,一次是options类型,一次是真实的请求,为了避免这种情况发生,需在后端过滤器中拦截下options请求,代码如下:
import java.io.IOException;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;@Component
public class MethodFilter extends OncePerRequestFilter {@Overrideprotected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)throws ServletException, IOException {if (request.getMethod().equals("OPTIONS")) {response.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED);} else {filterChain.doFilter(request, response);}}
}
配置文件中:
server:port: 8080tomcat:port-header: HEAD,PUT,DELETE,TRACE,COPY,SEARCH,PROPFIND
验证过其他方式,但是没有过滤成功,以上代码是测试通过的,特此记录。
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"java后端请求过滤options方式,亲测有效":http://eshow365.cn/6-27244-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!