从 URL 访问没有 .ashx 扩展名的 ASHX

Access ASHX from URL without .ashx extension

我在 ASP.Net 项目中有一个 Web 处理程序。我想从 URL.

访问它

是的,我可以这样做 http://mywebsite.com/handler.ashx?id=35157 它工作正常。

但问题是,我正在从某些 Arduino 设备访问它。他们的图书馆不支持那种 URLs.

他们像 URL 一样支持 http://mywebsite.com/handler?id=35157

如何从 URL 访问 Web 处理程序,例如 http://mywebsite.com/handler?id=35157,device=DF,Msg=OK

没有 ASHX 扩展名?

您始终可以使用 IIS 重写规则。

<rule name="Remove ASHX Extension" stopProcessing="true">
  <match url="^handler(.*)$" />
  <action type="Rewrite" url="handler.ashx{R:1}" />
</rule>

您可以在 Web.config 中添加处理程序:

 <handlers>
        <add name="CustomHandler" path="handler" verb="GET" type="AppCode.CustomHandler" preCondition="integratedMode"/>
  </handlers>