Angular 4新的HttpClient内容 - 处置头

时间:2017-11-07 14:22:35

标签: angular blob httpclient

我正在尝试使用新的HttpClient从我的后端获取文件(数组缓冲区)。

我的代码非常类似于以下内容:

this.http.post(url, body, {responseType: 'blob', observe: 'response'})
  .subscribe(resp => {
    console.log(resp.headers.get('content-disposition'));
  });

我的浏览器控制台中的repsonse是 null

当我查看网络标签时,我发现内容处置的值类似于附件;文件名= “无所谓”

如果我尝试获取内容类型,那么我会收到一些东西。

您是否经历过类似的事情,或者您能告诉我我还有什么要做的吗? 非常感谢

3 个答案:

答案 0 :(得分:22)

我遇到了同样的问题,发现了https://stackoverflow.com/a/45482346/1909698

在我的后端响应标头中添加'Access-Control-Expose-Headers': 'Content-Disposition'后,它对我有用。

答案 1 :(得分:0)

在这种情况下,尝试使用具有此类属性的jquery

CTOC

答案 2 :(得分:0)

如果您的后端使用的是SpringSecurity,则需要将ExposeHeader添加到配置源

@Bean
protected CorsConfigurationSource corsConfigurationSource() {
    CorsConfiguration configuration = new CorsConfiguration();
    configuration.addExposedHeader("Content-Disposition");
    return source;
}