在Angular2的http服务中设置Accept-Encoding标头

时间:2017-02-14 21:12:33

标签: angular http-headers

我正在尝试让我的Angular2应用请求资源,其编码设置为gzip。代码编译并运行正常,但它似乎不受添加gzip标头的影响。我甚至无法确认已添加标题,因为在Safari的网络检查器中没有任何标记

  var contentTypeHeaders = new Headers();
  contentTypeHeaders.append('Accept-Encoding', 'gzip, deflate');

  var options = new RequestOptions({
    method: RequestMethod.Get,
    url: url,
    headers: contentTypeHeaders
  });
  var req = new Request(options);


    return this.http.request(req)
        .map((res: Response) => res.json())
        .catch((error: any) => Observable.throw(error.json().error || 'Server error'));
}

1 个答案:

答案 0 :(得分:0)

如果支持auto-un-gzipping,它会被浏览器添加为自动标题。我可以在Firefox,Chrome和IE的网络检查员中看到它,但不能看到Safari。它是如此嵌入,以至于它不会出现在检查器中,或者Safari不支持它,这是不太可能的。所以我的问题的答案是:不要自己添加标题。