Angular 2+读取http响应头

时间:2017-09-01 09:36:07

标签: angular typescript

我试图找到答案却无法找到答案,所以我的问题很简单,我有这个功能

  getProducts(projectId, pageSize, page) {
    return new Promise((resolve, reject) => {
      this.http.get('/api/projects/' + projectId + '/products/?pageSize=' + pageSize + '&page=' + page).subscribe(data => {
        resolve(data);
      }, error => {
        reject(error)
      });
    });
  }

我正在尝试阅读分页自定义标题,并且在浏览器响应中我可以看到它,但我不知道如何使用我的函数访问它,在老角度我使用拦截器但是在角度2+我'我无法使它工作,任何人都可以告诉我该怎么做?

1 个答案:

答案 0 :(得分:2)

所以在我调查了很多可能性之后,我发现了最好和最简单的解决方案,我希望这有助于某人。我使用HttpClient和angular 4+,只需在http.get中添加新参数:methd {observe:'response'}

  getProjects(projectId, pageSize, page) {
    return new Promise((resolve, reject) => {
      this.http.get('/api/projects/' + projectId + '/products/?pageSize=' + pageSize + '&page=' + page,
        { observe: 'response' }).subscribe(data => {
          const pagination = JSON.parse(data.headers.get('pagination'));
          resolve({
            items: data.body,
            totalItems: pagination.TotalItems
          });
        }, error => {
          reject(error)
        });
    });
  }