簡體   English   中英

asp.Net中的HTTPHandler

[英]HTTPHandler in asp.Net

我想在我的asp.net項目中實現HTTPHandler。 我按照鏈接進行了同樣的操作。 我在根目錄中創建了一個名為App_code的文件夾。 他們寫了一個MyHTTPHandler類。 它具有可重用屬性,我也處理流程

public class HelloWorldHandler : IHttpHandler
{
    public HelloWorldHandler()
    {
    }

    public void ProcessRequest(HttpContext context)
    {

        context.Response.ContentType = "text/plain";

        if (context.Request.RawUrl.Contains(".cspx"))
        {
            string newUrl = context.Request.RawUrl.Replace(".cspx", ".aspx");
            context.Server.Transfer(newUrl);
        }

    }

    public bool IsReusable
    {
        // To enable pooling, return true here.
        // This keeps the handler in memory.
        get { return false; }
    }
}

處理程序並沒有受到限制。 由於我是ASP.Net的新手,所以我不知道出了什么問題。 我還輸入了web.config中所需的部分。 我瀏覽了許多鏈接,有人說您需要在IIS中復制代碼。 我聽不懂。 請指教

除非您要處理已注冊的某些路徑,否則無需在IIS中進行任何設置。 通常,您需要做的就是將<httpHandlers>部分添加到web.config中:

<configuration>
  ...
  <system.web>
    ...
    <httpHandlers>
      <add verb="*"
           path="HelloWorldHandler.ashx" 
           type="NamespaceName.HelloWorldHandler, WebApplicationName" />
    </httpHandlers>
    ...
  </system.web>
  ...
</configuration>

這里, HelloWorldHandler.ashx是用於觸發處理程序的路徑, NamespaceName.HelloWorldHandler是處理程序類的全名,包括所有名稱空間,而WebApplicationName是在其中實現的程序集處理程序的名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM