我正在对成功的 REST API 进行 http.patch 调用(状态 200),但并非所有响应标头键/值都被返回。我对 ETag 键/值感兴趣。
这是一个代码片段:
let etag:number = 0;
let headers = new Headers();
headers.append('Content-Type', 'application/json');
headers.append('If-Match', String(etag));
this.http.patch(
'http://example.com:9002/api/myresource/',
JSON.stringify(dto),
{headers: headers}
)
.subscribe(
(response:Response) => {
let headers:Headers = response.headers;
let etag:String = headers.get('ETag');
console.log(etag);
}
);
当使用 REST 客户端(邮递员)进行相同的调用时,响应标头包含:
Content-Type: application/hal+json;charset=UTF-8
Date: Mon, 01 Feb 2016 05:21:09 GMT
ETag: "1"
Last-Modified: Mon, 01 Feb 2016 05:15:32 GMT
Server: Apache-Coyote/1.1
Transfer-Encoding: chunked
X-Application-Context: application:dev:9002
缺少响应标头键/值是错误吗?可以通过配置解决问题吗?