繁体   English   中英

在进入应用程序之前尽早检查请求

[英]Earliest inspection of request before entry to application

在命中应用本身之前,有没有办法响应请求,最好是基于 URL,并返回响应? 可能是 web.config 服务器 (IIS) 配置或类似于 app_offline 的静态页面。

本质上,这是我的场景:如果我收到带有特定路径(即 /hello)的请求,我想立即返回响应而不是进入应用程序。

这可能吗? 有没有办法设置一个静态页面,它总是在 .NET 启动(身份验证、过滤器、中间件等)之前提供,有点像 app_offline?

我尝试查看 ISAPI 过滤器,但对于我想要做的事情来说似乎过于复杂,尤其是考虑到我们的应用程序已部署到 Azure。

是否有一些我们可以利用的 Azure 功能?

我建议您可以尝试使用 httphandler 来实现您的要求。 您可以创建一个自定义 http 处理程序,它将在 Web 表单之前触发。

关于如何创建自定义 httphanlder 的详细信息,您可以参考以下步骤:

1.创建自定义类:

public class CustomHanlder : IHttpHandler
{
    public bool IsReusable => true;

    public void ProcessRequest(HttpContext context)
    {
        context.Response.Write("CustomHttpHandler");
       
    }
}

2.将以下设置添加到web.config

<system.webServer>
    <handlers>
        <add name="CustomHandler" path="hello" type="[YouapplicationNameSpace].CustomHanlder" verb="*"/>
    </handlers>
</system.webServer>

结果:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM