在spring cloud的Zuul服务网关的过滤器中,项目中使用JWT权限验证,前端JS为了兼容跨域请求,使用Access-Control-Request-Headers的header进行预检请求,如下处理即可:
在pre过滤中:
@Override
public boolean shouldFilter() {
RequestContext ctx = RequestContext.getCurrentContext();
HttpServletRequest request = ctx.getRequest();
String method = request.getMethod();
boolean preflight = RequestMethod.OPTIONS.name().equalsIgnoreCase(method);
if (preflight) {
return false;
}
return true;
}
因为业务请求都使用POST,只有预检请求是OPTIONS。
Zuul处理预检请求
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Nginx API for Lua Introduction ngx.arg ngx.var.VARIABLE C...
- 1、不安全的随机数生成,在CSRF TOKEN生成、password reset token生成等,会造成toke...
- 原文转自: http://troyyang.com/2017/06/06/Express_Cors_Preflig...