我想在Azure API管理与后端之间的Azure API管理中的每个请求(由于一些奇怪的防火墙设置)之后关闭SSL连接。
我尝试设置HTTP标头策略
<set-header name="Connection" exists-action="override">
<value>close</value>
</set-header>
但是保存后,我收到以下错误消息
一个或多个字段包含不正确的值:
- 第30行第10列的元素'set-header'中的错误:标题名称无效或被限制修改。
根据Mozilla,“连接” HTTP标头是Forbidden header name
禁止的标头名称是任何不能以编程方式修改的HTTP标头的名称;特别是HTTP请求标头名称(与禁止响应标头名称相反)。
使用邮递员,我可以设置“ Connection” HTTP标头并发送我的请求。
每个请求后,如何使Azure API管理关闭SSL连接?
这是不可能的。 APIM中的后端连接已被重用,因此在您决定关闭它时,它可能已经用于发送另一个并行发出的请求。有一种方法可以安全地回收后端连接,但是不能根据每个请求完成:https://docs.microsoft.com/en-us/rest/api/apimanagement/2019-12-01/backend/reconnect
另一种方法是使后端使用HTTP 1.0进行响应。 HTTP 1.0表示非持久连接。