【发布时间】:2019-08-13 20:37:50
【问题描述】:
我想创建收集所有 URL 的处理程序,我检查 URL,然后继续“处理”。这意味着,如果 URL 是 www.mysite.com/Contact,它会调用我的处理程序并在 www.mysite.com/Contact 中继续。我不想调用 Redirect 或类似的东西。
问题是,它不能传递内容和脚本。这意味着所有的 css、js 和图像文件都没有通过。例如,我有空的 ProcessRequest(HttpContext context) 函数,它会阻止文件。问题是如何继续(加载所有文件)?
这就是我注册处理程序的方式
<system.webServer>
<handlers>
<add name="MyHandler" path="*" verb="*" type="MyWebApp.MytHandler" resourceType="Unspecified" preCondition="integratedMode" />
</handlers>
</system.webServer>
我试过了
public void ProcessRequest(HttpContext context)
{
context.Response.Flush();
}
但它仍然会阻止所有文件。
如果你问我为什么要这样做,因为我想检查 Url,如果一切正常,它会继续,如果不是我重定向到控制器。检查 URL 并重定向到某个控件或页面很容易,context.Response 有大量示例。也许我做错了,而 Handler 有更好的东西。
【问题讨论】:
标签: asp.net-mvc response httphandler