2017-09-01 136 views
0

我试图找到答案,但无法,所以我的问题很简单,我有这个功能角2+读取HTTP响应头

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+我无法使它工作,任何人都可以告诉我如何做到这一点?

+0

是Http还是HttpClient? –

+0

什么是你正在使用的angualr的版本4 + –

+0

@ Jota.Toledo哈哈,我想我们有工作(我和你) –

回答

0

因此,我调查了很多可能性后,我发现最好的和最简单的解决方案,我希望这可以帮助某人。我使用HttpClient和角度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) 
     }); 
    }); 
    }