2011-06-23 54 views
0

如果我在web.config文件中添加一個HTTP模塊是這樣的:HTTP模塊和Ajax

<httpModules> 
     <add name="TheName" type="MyModule"/> 
    </httpModules> 

將其解僱的代碼,如果我寫這篇文章:

public void Init(HttpApplication TheApp) 
    { 
     TheApp.BeginRequest += new EventHandler(MyCode); 
    } 

當我調用靜態頁面方法從jQuery的是這樣的:

$.ajax({ 
    type: "POST", 
    url: "../Pages/AnyPage.aspx/AnyPageMethod", 
     ...... 

如果在一個Ajax請求進來,然後懇求那不是火mycode的有道請讓我知道正確的做法可能看起來像什麼。

謝謝。

回答

0

這是接收請求時觸發代碼的一種方法。但是它的低效率會在每次請求時觸發無論如何。

如果您編寫了一個可以過濾出特定資源請求的httphanlder,那麼只有在您請求某些文件類型時纔會觸發它。

http://support.microsoft.com/kb/307985#2b

+0

嗯,我正在尋找火在每次請求,什麼是錯的這種做法? – frenchie

+0

如果這就是你想要做的事情,那沒有什麼。 :-)只是不知道你是否真的想用JavaScript來貶低它,或者你是否想等待JavaScript事件。 – Exitos

0

你舉的例子是正確的,雖然的BeginRequest未必是最合適的。您可能希望查看可從HttpModule中掛鉤的所有事件,然後決定哪個事件適合您的要求。

這裏是events in ASP.NET 2.0鏈接: