我正在尝试使用新的HttpClient从我的后端获取文件(数组缓冲区)。
我的代码非常类似于以下内容:
this.http.post(url, body, {responseType: 'blob', observe: 'response'})
.subscribe(resp => {
console.log(resp.headers.get('content-disposition'));
});
我的浏览器控制台中的repsonse是 null
当我查看网络标签时,我发现内容处置的值类似于附件;文件名= “无所谓”
如果我尝试获取内容类型,那么我会收到一些东西。
您是否经历过类似的事情,或者您能告诉我我还有什么要做的吗? 非常感谢
答案 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;
}