不行,报这个错误:System.InvalidOperationException: Response Content-Length mismatch: too few bytes written (0 of 2155)
@飞羽在天上: 建议提供重现问题的代码
@dudu: 红框内代码报错,报错内容如下图
@飞羽在天上: 设置stream存放ResponseBody
部分的代码放错地方了,应该放在 await _next(context);
之后
@dudu: 如果放后面就没法读取ResponseBody的内容了
@飞羽在天上: 请求时哪有 ResponseBody?
@dudu: context.Response.Body
可以在 Filter 处实现,不建议通过中间件去处理。
是在网关Ocelot里将下游服务的返回的内容进行修改,Filter没法实现
需要重新设置 context.Response.ContentLength 长度是你更改后得。