【发布时间】:2011-11-04 05:12:01
【问题描述】:
我想更改输入请求流。
详情是:
我想将输入流中的“文本 1”替换为“文本 2”
第一个:我使用Request.Filter作为http://msdn.microsoft.com/en-us/library/system.web.httprequest.filter.aspx但是这样我只能用另一个字节替换一个字节数据,我不能用一个字符串替换一个字符串,我也不能改变缓冲区大小。我需要访问旧缓冲区并将其替换为另一个字节数组(内容和缓冲区长度)
第二个:我尝试使用ISAPI过滤器,但IIS 7及以上版本似乎不再支持SF_NOTIFY_READ_RAW_DATA。我用谷歌搜索,结果是我应该用 CHttpModule::OnReadEntity 事件编写一个本机 HttpModule。对吗?
如果您能告诉我如何更改输入请求流,我将不胜感激。
非常感谢。
喂
【问题讨论】:
-
我发现我们可以使用原生的HttpModule,如下artice:forums.iis.net/t/1157522.aspx。我尝试更新 ContentType-Length 和 EntityBody(使用 InsertEntityBody),但它没有为我运行。 :(