1. 程式人生 > >springboot+vue解決跨域讀取不出header的內容

springboot+vue解決跨域讀取不出header的內容

最近在做一個專案是springboot作為後端服務,使用vue作為前端開發,本人主負責springboot後端。

然後在介入後端api過程中,前端開發人員告訴我獲取 respose headers 時候獲取到的只有的

而實際後端已經全部提供了


經過討論發現是伺服器上要設定 Access-Control-Expose-Headers。

我們專案springboot關於CORS配置如下:

@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {
    @Override
public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**"
); } }

在後面新增exposedHeaders屬性即可:

@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {
    @Override
public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**").exposedHeaders("Authorization");
    }
}

附上其他引數配置,可根據需要配置:

@Configuration
public class WebConfig extends 
WebMvcConfigurerAdapter { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**") .allowedOrigins("*") .allowedMethods("PUT", "DELETE", "GET", "POST") .allowedHeaders("*") .exposedHeaders("access-control-allow-headers"
, "access-control-allow-methods", "access-control-allow-origin", "access-control-max-age", "X-Frame-Options") .allowCredentials(false).maxAge(3600); } }