2011-04-21 76 views
4

我想建立Facebook的登錄鏈接,我只是在某些情況下我得到的錯誤。我試圖在redirect_uri令牌中指定querystring參數,以便我可以在登錄後將它們重定向回到我站點的特定區域。以下是有效的和無效的。如何編碼Facebook的登錄redirect_uri

&redirect_uri=http://mydomain.com/login?returnUrl=returnUrl - 工程 &redirect_uri=http://mydomain.com/login?returnurl=/return/url -doesn't工作 &redirect_uri=http%3a%2f%2fmyagentcheckin.com%2flogin%3freturnUrl%3d%2freturn%2furl -doesn't工作

看來,在查詢字符串的/是導致其失敗。當我嘗試它時,Facebook返回一個錯誤。任何人都知道解決這個問題的方法?

回答

1

我都經歷過類似的東西,尤其是與多個如上重定向。

我的解決辦法是把RETURNURL到用戶的會話(或者是一個cookie),所以我沒有與編碼雙搏鬥。對於redirect_url,只需省略查詢字符串。

+0

我是怕這將是答案= ).... – Micah 2011-04-21 17:41:57

0

嘗試使用this API放在一起。它會爲你消除這種麻煩。

不需要URL編碼。

樣品認證

Imports Branches.FBAPI 
... 
Dim SI As New SessionInfo("[application_id]","applicaiton_secret") 
SI.AuthenticateUser("http://[my url]", New SessionInfo.PermissionsEnum(){SessionInfo.PermissionsEnum.email, SessionInfo.PermissionsEnum.read_stream})) 

閱讀從你上面從該頁面提供的URL的響應。

Dim FSR = FS.ReadFacebooAuthResponse