API管理<forward-request>失败,并显示错误消息“无法访问关闭的流。”

时间:2019-02-19 17:51:45

标签: azure-api-management

作为检查以请求API管理代理请求正文的要求的一部分,我向context.Request.Body.As<string>(preserveContent: true)添加了一个调用。但是,进行此更改后,我的<forward-request>策略失败,并出现Cannot access a closed Stream

该错误消息没有很多线索,但是我认为它所指向的流是入站请求正文。因此,我使用了preserveContent: true重载,但是无论如何它都会失败。

还有哪些其他原因可能导致流关闭,如何保持流打开,以便<forward-request>也可以转发请求正文?

1 个答案:

答案 0 :(得分:3)

我通过在<set-body>部分的末尾插入<inbound>策略来解决此问题,如下所示:<set-body>@(context.Variables.GetValueOrDefault<string>("Request.Body"))</set-body>