我正在使用HttpClient.get()
编写API GET请求。我传入了用于观察响应的选项,并且当我访问.keys()
时,除了Content-Type
之外没有其他标题。
Access-Control-Allow-Origin
标头设置为通配符(*),但我仍然只能以角度访问Content-Type
标头。我想念什么?
标题已正确发送到“网络”选项卡中的浏览器。我还尝试在Access-Control-Allow-Origin
中明确允许该自定义标头。
Angular应用程序:
this.data.getClubs(1, 10, '', {clubName: 'asc'}, '').subscribe(
dataJson => {
console.log(dataJson.headers.keys());
}
getClubs(page: number, count: number, group: any, sorting: any, filter: any) {
return this.http.get(this.apiUrl + `/club`, {
params: {
count: String(count),
filter: String(filter),
group: String(group),
page: String(page),
sorting: JSON.stringify(sorting)
},
headers: this.getHttpOptions().headers,
observe: 'response'
});
}
请查看图像。标头设置为允许访问标头。 https://i.imgur.com/8nS5SbH.png https://i.imgur.com/A1E4Mhh.png
任何帮助将不胜感激!
答案 0 :(得分:0)
这是因为您需要将标题名称添加到后端的evaluateJavaScript:
参数上。
例如,如果要公开名为“ my-custom-header”的标头,则在后端,需要将此标头添加到access-control-expose-headers
参数中,如
access-control-expose-headers
希望这会起作用