2012-07-29 102 views
2

爲什麼不能我註冊的HttpModule一個目錄下?路徑/文件夾下注冊的HttpHandler

<system.web> 
    <httpHandlers> 
     <add verb="*" path="/home/facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" /> 
    </httpHandlers> 

    </system.web> 

<handlers> 
    <add name="facebookredirect.axd" verb="*" path="/home/facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" /> 
</handlers> 
當請求到達

/home/facebookredirect.axd I M得到一個404這是爲什麼不工作?

我想facebookredirect.axd/home/

下面是FRM工作,global.asx

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

本質。 home犯規存在,存在家庭控制器。但我想用這條路。

+0

你沒有格式良好的xml。請參閱system.web打開標記。 – Nate 2012-07-29 23:44:26

+0

@Nate IT方面有效。我不想複製整個事情。只需粘貼結束標籤。抱歉。 – DarthVader 2012-07-29 23:47:41

回答

2
path="/home/facebookredirect.axd" 

應該是:

path="home/facebookredirect.axd" 

而且你需要從你的路由排除這個網址:

​​
+0

啊存在。我很接近。我有一個解決方法的想法。謝謝:)你的搖滾! – DarthVader 2012-07-30 16:12:17

0

這可能是因爲存在(即*個.axd)你之前增加了一個通用的個.axd處理。

如果您將您的處理程序之前刪除這一點,然後將其重新添加在您的處理程序被添加後,它可以解決這個問題(免責聲明:沒有試過,只是去的證據)。

0

嘗試添加resourceType="Unspecified"

所以becames

<add name="facebookredirect.axd" verb="*" path="/home/facebookredirect.axd" 
type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" 
resourceType="Unspecified" /> 

至少,我有處理與相同的聲明文件夾的工作。

而且文件夾 「家」 應該在服務器上存在

+0

「家」 deosnt必須在服務器 – DarthVader 2012-07-29 23:11:19