2017-06-02 69 views
0

我有一個鉻擴展我想作爲oauth2客戶端使用守門人和設計我的rails應用程序。在擴展中,我有使用門衛與鉻擴展oauth2流

chrome.identity.launchWebAuthFlow(
    {'url': 'http://localhost:3000/oauth/authorize?client_id=98c0af01eec1004144f32a6fd5d114b40efcd01771e24a7190f2acd06ac552c8&redirect_uri=https://galaiojniedmogfplghkjnmcfnlbpbpg.chromiumapp.org?response_type=code&scope=', 'interactive': true}, 
    function(redirect_url) { 
    /* Extract token from redirect_url */ 
    console.log(redirect_url) 
    } 
); 

這會啓動一個窗口,要求我使用我的rails應用程序登錄。登錄並關閉此窗口後,運行console.log,但redirect_urlundefined

在門衛管理我的這個客戶端的回調url是https://galaiojniedmogfplghkjnmcfnlbpbpg.chromiumapp.org/我通過調用chrome.identity.getRedirectUrl()檢索。

我在這裏錯過了什麼?

+0

您可能想要檢查[User Authentication](https://developer.chrome.com/)中的[GitHub](https://github.com/GoogleChrome/chrome-app-samples#_sample_github-auth)示例apps/app_identity)文檔。這顯示了'launchWebAuthFlow'的谷歌實現示例,將其作爲基礎引用將幫助跟蹤爲什麼redirect_url未定義。希望這可以幫助。 –

回答

0

這是我如何設置門衛的問題。因爲我在重定向之前進行了會話身份驗證,所以它返回了301.確保您的身份驗證在Chrome擴展流程之外工作,然後再將其掛接到擴展。