写点什么

nginx 跨域实战

作者:智慧源点
  • 2024-04-21
    北京
  • 本文字数:770 字

    阅读完需:约 3 分钟

1、spring boot 配置

@Configurationpublic class WebConfig extends WebMvcConfigurationSupport {

@Bean public TokenInterceptor loginInterceptor() { return new TokenInterceptor(); }
@Override protected void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(loginInterceptor()); }

@Override protected void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOriginPatterns("*").allowedMethods("*").allowCredentials(true) // 预检时间 .maxAge(3600).allowedHeaders("*"); }}
复制代码

2、nginx 配置

对预检请求 OPTIONS 进行跨域设置

location /third {                if ($request_method = 'OPTIONS'){                  add_header Access-Control-Allow-Origin *;                  add_header Access-Control-Allow-Methods 'POST, GET, OPTIONS, DELETE';                  add_header Access-Control-Max-Age "3600";                  add_header Access-Control-Allow-Credentials true;                  add_header Access-Control-Allow-Headers *;                  add_header Content-Type 'application/json; charset=utf-8';                  return 204;                 }                proxy_set_header   Host             $host;                proxy_set_header   X-Real-IP        $remote_addr;                proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;                proxy_pass http://thirdServer;        }
复制代码

现在有个问题是 OPTIONS 放在 server 节点全局设置不生效,哪位大佬知道,请留下评论!谢谢

用户头像

智慧源点

关注

终身学习、研究java架构、ai大模型 2019-12-06 加入

商业合作: wytwhdwdd

评论

发布
暂无评论
nginx跨域实战_nginx跨域_智慧源点_InfoQ写作社区