2014-02-19 100 views
0

什麼,我試圖做的是將用戶重定向如果它的訪問令牌過期我這樣做使用我的本地主機這樣的:的REDIRECT_URI URL必須是絕對錯誤

Response.Redirect("https://www.facebook.com/dialog/oauth?" + 
      "client_id=" + "{507061112747022}" + 
      "&redirect_uri=" + "{http://localhost:63695/FacebookChatApi/Default.aspx}"); 

但錯誤發生說The redirect_uri URL must be absolute error會有什麼問題?我怎樣才能修復它(我使用C#作爲語言)

+0

這個問題也許能幫助 http://stackoverflow.com/questions/16992958/the-redirect-uri-url-must-be-absolute-facebook-login-php-sdk –

+0

我檢查該鏈接之前,我發佈我的問題 – Sora

回答

2

刪除大括號。

Url對重定向URI進行編碼。

Response.Redirect("https://www.facebook.com/dialog/oauth?" + 
    "client_id=507061112747022" + 
    "&redirect_uri=" + 
    Uri.EscapeDataString("http://localhost:63695/FacebookChatApi/Default.aspx")); 
+0

你的解決方案工作,但我現在得到這個:API錯誤代碼:191 API錯誤描述:指定的URL不屬於應用程序 錯誤消息:無效的redirect_uri:給定的URL是不允許的應用配置。 – Sora

+0

這是一個單獨的問題。您的Facebook應用設置很可能需要更改。 IIRC,使用Facebook在本地主機上測試是有問題的。不工作的解決方案通常會得到upvotes? ;) – spender

+0

你能告訴我如何解決這個問題?我應該在我的應用程序配置中修復哪些url以使其工作? – Sora

0

您也可以嘗試設置字符串作爲點燃

與附加@您的Response.Redirect開始

所以看起來像

Response.Redirect(@"https://www.facebook.com/dialog/oauth?" +  
     "client_id=" + "{507061112747022}" + 
     "&redirect_uri=" + "{http://localhost:63695/FacebookChatApi/Default.aspx}"); 

爲富豪說下面你也可以編碼爲URI

Uri uri = new Uri("https://www.facebook.com/dialog/oauth?" +  
      "client_id=" + "507061112747022" + 
      "&redirect_uri=" + "http://localhost:63695/FacebookChatApi/Default.aspx"); 
相關問題