我正在查询后端,例如跟随角度4
this.classzService.query({
page: this.page,
size: this.itemsPerPage,
sort: this.sort(),
url: url
}).subscribe(
(res: Response) => this.onQuerySuccess(res.json(), res.headers),
(res: Response) => this.onError(res.json())
);
private onQuerySuccess(data, headers: Headers) {
this.links = this.parseLinks.parse(headers.get('Link'));
this.totalItems = headers.get('X-Total-Count');
}
问题是headers.get('Link')
,headers.get('X-Total-Count')
给出了空值。
答案 0 :(得分:1)
这通常发生在CORS的情况下,当起源不同时。在服务器上启用CORS时,默认情况下它只显示一些默认标头。在您的情况下,因为您有两个自定义标头Link
和X-Total-Count
。因此,在您的服务器上,您需要使用Access-Control-Expose-Headers
显式公开这些标头。如果您使用的是ASP.NET WebApi,则可以将其添加到WebApiConfig
类:
config.EnableCors(new EnableCorsAttribute("*", "*", "GET, POST, OPTIONS, PUT, DELETE", "Link, X-Total-Count"));