2013-03-05 111 views
1

我正在使用門衛和Omniauth。 客戶端重定向到我的授權端點,該端點將重定向到登錄頁面。要求用戶使用Facebook進行身份驗證,之後他將登錄並返回到門衛。門衛與Omniauth - 如何處理用戶不授權的情況?

我的問題是,如果用戶選擇不登錄,流程永遠不會返回到門衛。我期望該流程將返回到門衛,這將向客戶端返回一個錯誤。

我該怎麼做?

回答

1

這不是一個真正的問題。這是用戶主動選擇不連接和執行其他操作。

變通辦法取決於您是否在當前選項卡,新選項卡或新窗口中重定向。如果您更換了標籤/窗口,那麼他已經不在您的應用中了。如果在新選項卡中,您的網頁仍處於打開狀態,或者您的oauth消費者的網頁仍處於打開狀態。如果用戶真的需要,那麼這些頁面應該能夠單擊按鈕嘗試再次連接。

如果你的頁面仍然在一個標籤中,你可以做javascript setTimeout,但它的用途是什麼?

這聽起來像你只是過度思考這個:)你最終結果是什麼?

+1

你說得對,我一直在想這個。在我的實現中,登錄在彈出窗口中打開,一旦完成,主窗口上就會調用js。當用戶選擇不登錄時,沒有被調用,並且行爲正常。幸運的是,FB登錄對話框中的「取消」按鈕假定它彈出並關閉窗口。 – davidrac 2013-12-19 18:32:57

+0

明白了,謝謝分享。 – oma 2013-12-20 20:30:42

相關問題