2011-05-23 95 views
1

所以我已經設置了一切邀請用戶註冊頁面上我的網站,並跟蹤他們的邀請碼,但現在每當用戶接受,他們最終得到以下錯誤的邀請:Facebook API:這個facebookredirect.axd來自哪裏?

HTTP錯誤404.0 - 未找到

您正在查找的資源已被刪除,名稱已更改或暫時不可用。

而這裏的網址:

http://www.facebook.com/dialog/oauth/?state=eyJyIjoiaHR0cDovL2FwcHMuZmFjZWJvb2suY29tL2Zpc2hhcndlLz9yZXF1ZXN0X2lkcz0xMDE1MDYzNzQzNDI4NTQ4NCwxMDE1MDYzNzU3NjA0MDQ4NCwxMDE1MDYzNzU4MDQ1NTQ4NCwxMDE1MDYzNzU5NzQ2MDQ4NCwxMDE1MDYzNzYxNDUyMDQ4NCwxMDE1MDYzNzYzMDg0NTQ4NCZyZWY9bm90aWYmbm90aWZfdD1hcHBfcmVxdWVzdCJ9&client_id=217174461634478&redirect_uri=http://www.fisharwe.com/facebookredirect.axd

爲什麼REDIRECT_URI http://www.fisharwe.com/facebookredirect.axd,而不是我所使用top.location.href="whatever.com"我的代碼設置?

UPDATE:

好像這個問題已經在某種程度上得到解決。但它仍然不會重定向到我的網站的註冊頁面!這裏的登陸頁面的源代碼:

<html><head><script type="text/javascript"> top.location = "http://www.facebook.com/dialog/oauth/?state=eyJyIjoiaHR0cDovL2FwcHMuZmFjZWJvb2suY29tL2Zpc2hhcndlLz90eXBlPWRpc2NvdmVyeSJ9&client_id=217174461634478&redirect_uri=http://www.fisharwe.com/facebookredirect.axd"; </script></head><body></body></html>

UPDATE2:

這是我的C#代碼:

[CanvasAuthorize] 
    public ActionResult Index() 
    { 
     var fb = new FacebookWebClient(FacebookWebContext.Current); 
     dynamic requestInfo = fb.Get("/me/apprequests/"); 
     var b = requestInfo.Count; 
     if (requestInfo.data.Count > 0) 
     { 
      var a = requestInfo["data"][0]["data"]; 
      //ViewData.Add("TrackingData", a); 
      return Redirect(redirectUrl + "?code=" + a); 
     } 
     return RedirectToAction("Index", "Home"); 
    } 

回答

0

有你設置web.config中的HTTP處理程序?

<httpHandlers> 
    <add verb="*" path="facebookredirect.axd" type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" /> 
</httpHandlers> 
+0

@prabir:是的。 Facebook C#SDK爲我做了我相信...我也在應用程序配置中設置了網站URL(在FB中),我是否也需要在web.config中設置它?它應該是什麼,我的網站的根(例如:www.mysite.com)還是我想要將用戶重定向到的路線(例如:www.mysite.com/Register)? – Kassem 2011-05-24 07:24:06

+0

@prabir:我已經更新了我的問題,請仔細閱讀。謝謝。 – Kassem 2011-05-24 08:18:37

+0

也可以粘貼C#代碼。最好的方法是查看源代碼中包含不同場景的「Samples」文件夾。 – prabir 2011-05-25 02:19:23