我正在开发angular 5应用程序,现在已经搜索了很多关于如何使用此框架升级协议的信息。 我想使用http 2.出于这些目的,我正在手工发送这样的标题:
'Connection': 'Upgrade, HTTP2-Settings',
'Upgrade': 'h2c',
'HTTP2-Settings': 'base64EncodedSettings'
不幸的是,在服务器端,我无法看到连接和升级的值。有什么我做错了吗?
以下是一些代码示例:
private getHeaders() {
return {
headers: new HttpHeaders(
{
'Authorization': localStorage.getItem(AuthorizationService.authTokenKey),
'Content-Type': 'application/json',
'Accept': 'application/json',
'Connection': 'Upgrade, HTTP2-Settings',
'Upgrade': 'h2c',
'HTTP2-Settings': 'base64EncodedSettings'
}
)
}
}
呼叫本身:
this.http.post(`some_url`, body, this.getHeaders())
实际上,HttpClient
正在做什么 - 它会删除Upgrade
标头并使用keep-alive覆盖Connection
。
如何避免它?