在ASP.NET中访问原始请求

在ASP.NET中访问原始请求,asp.net,web-services,iis,url-rewriting,Asp.net,Web Services,Iis,Url Rewriting,我正在寻找一种绕过所有ASP.NET特定行为的方法,并在IIS/azure服务器上工作,就像在大多数其他服务器上一样(接收请求字符串,编写响应)。我知道这在ASP.NET中不是一个常见的愿望,但如果能移植一些外部代码在ASP.NET上工作,那就太好了 因此,基本上,我正在寻找一种方法: 对于不是物理文件的每个请求,调用我的处理程序 这个处理程序将接收原始HTTP请求(如果我有相同的信息,对它进行抽象是可以的) web服务器逻辑将处理请求并编写响应(同样,抽象也可以,因为我可以编写相同类型的信息

我正在寻找一种绕过所有ASP.NET特定行为的方法,并在IIS/azure服务器上工作,就像在大多数其他服务器上一样(接收请求字符串,编写响应)。我知道这在ASP.NET中不是一个常见的愿望,但如果能移植一些外部代码在ASP.NET上工作,那就太好了

因此,基本上,我正在寻找一种方法:

  • 对于不是物理文件的每个请求,调用我的处理程序
  • 这个处理程序将接收原始HTTP请求(如果我有相同的信息,对它进行抽象是可以的)
  • web服务器逻辑将处理请求并编写响应(同样,抽象也可以,因为我可以编写相同类型的信息,如HTTP状态和HTTP头)
实现这一目标的最佳方式是什么?
谢谢大家!

您可以自己编写一个自定义HTTP模块,并向IIS注册它

怎么样

Nancy设计用于处理删除、获取、HEAD、OPTIONS、POST、PUT和 修补程序请求并提供简单、优雅、特定于域的 语言(DSL),用于返回仅包含两个 击键,让你有更多的时间专注于重要的事情 位。。您的代码和应用程序


这是否也适用于Azure服务器?对于共享主机服务和HTTP模块是否有任何共同的限制?非常感谢。我想它会,但我们没有测试,我们通常在自己的托管服务器上托管。然而,为了进行测试而运行测试DLL是相当容易的。DLL最终成为标准CLR代码,以与IIS相同的权限运行。非常好!!!我会留下这个问题,这样我可以在Azure上测试它,但这似乎是解决这个问题的一个很好的方法!非常感谢你!哇!看起来棒极了!现在我们将更详细地查看它!谢谢虽然它看起来比我需要的要复杂得多。看这里有点吓人: