我正在尝试从后端获取压缩文件。请找到以下httpclient的代码:
我在标头中尝试了多个选项,以不同的选项添加内容类型。但无法提出确切的模板。我在angular api中找不到与从服务器获取压缩数据有关的任何内容。请让我知道是否有人会提出类似的问题。
getSpecialHeaders() {
return new HttpHeaders({
'Content-Encoding': 'gzip',
'specialHeader': '',
'Content-Type': 'gzip'
});
}
getAllUnitsReport() {
//Function to get the gzip data
const headersSpl = this.getSpecialHeaders();
//httpoptions with different options tried in content-type and accept encoding
const httpOptions = {
headers : headersSpl };
return this.httpClient.get(envConfig.appURL.assetAdoption, httpOptions)
.catch((error) => {
return Observable.of(error);
});}
http调用成功后,出现以下错误消息:
(未知网址)的HTTP错误响应:0未知错误
答案 0 :(得分:0)
Content-Encoding
标头是服务器提供的响应标头。
通常,客户端提供一个Accept-Encoding
标头,以指定要请求的内容编码。
例如:Accept-Encoding: gzip, deflate
请参见Compressing with gzip上的MDN
但是,这个特定的标头被标记为forbidden header,这意味着它不能通过在浏览器中执行的Javascript进行编程设置(但是仍然可以在Node中使用)。
大多数浏览器会自动添加一个Accept-Encoding
标头,其中包含它支持的所有内容编码。