输出前截取 Response 的数据的问题
我有一系列静态文件在服务器输出,比如 /doc/1.txt, /doc/2txt, /doc/3.txt
我的目的是在输出前用正则表达式替换一些字符
输出结果是与物理文件一一映射,必须是一一映射
http://www.test.com/doc/1.txt
http://www.test.com/doc/2.txt
http://www.test.com/doc/3.txt
我尝试用MVC的路由方法,但测试发现物理文件存在IIS会直接输出文件,而不走路由了,这个方法我暂时不考虑了,就用以下的另一个方法
我在 Global.asax 下使用 MvcApplication_EndRequest 可以截取 Response 了
Private Sub MvcApplication_EndRequest(sender As Object, e As System.EventArgs) Handles Me.EndRequest
'HttpContext.Current.Response.Filter 这就是输出流
End Sub
动态请求是没有问题的, HttpContext.Current.Response.Filter 的数据都可以读取与修改
但访问静态文件就不可以,测试发现 HttpContext.Current.Response.Filter.CanWrite 与 HttpContext.Current.Response.Filter.CanRead 的值都是 False,也就是不能修改也不能读取
有什么方法可以解决这个问题,请高手门指教
本人习惯写VB,请包函一下