http client 获取 header

获取全部 response:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
http
.get<MyJsonData>('/data.json', {observe: 'response'})
.subscribe(res => {
// 获取 header
console.log(res.headers.get('X-Custom-Header'))
// 获取 body
console.log(res.body.someField)
})
```

注意这里的 observe 参数很关键,如果没有这个参数就不会返回全部的 response 对象。

```typescript
this.http.post(url, body, {responseType: 'blob', observe: 'response'})
.subscribe(res => {
console.log(res.headers.get('x-total-count'))
})

自定义的 header 只有在后台配置之后,前端才能取到,例如:

1
'access-control-expose-headers' : 'x-total-count'