我正嘗試創建一個Chrome擴展程序,用戶可以使用其Google帳戶登錄。我已將其基於此示例代碼:https://developers.google.com/+/quickstart/javascript,它得到的最多爲gapi.auth2.init
,但隨後的Error: redirect_uri_mismatch
發生了400個錯誤。客戶端ID已被正確註冊。使用G +登錄的Chrome擴展程序 - redirect_uri_mismatch
由於redirect_uri錯誤,API調用失敗,但是我爲擴展設置了什麼URI?該API調用時像這樣:
gapi.auth2.init({
fetch_basic_profile: false,
client_id: '1234_valid_id_1234',
cookie_policy: 'none',
redirect_uri: 'xxx',
scope:'https://www.googleapis.com/auth/plus.login'
}).then(
「XXX」作爲URI僅僅是一個例子,我試過的衆多選擇在這裏,無濟於事。
該擴展將加載一個對話,就好像它將開始認證過程,但隨後出現400錯誤。我不明白什麼URI擴展應該提供作爲回調在這裏,當然這不適用?
客戶端ID等是好的 - 如果我只是在一個標準的本地主機網站上運行示例JS代碼它一切正常,它只是當試圖在它打破的擴展中使用它,因爲缺乏回調URI 。
您必須放置'postmessage'而不是實際的URI。請參閱:http://stackoverflow.com/questions/11485271/google-oauth-2-authorization-error-redirect-uri-mismatch和http://stackoverflow.com/questions/17954086/google-oauth2-authorizing-oauth -token-error-redirect-uri-mismatch/17976227#17976227 – gui47
這沒有什麼區別。無論我改變redirect_uri,我總會看到redirect_uri設置爲「storagerelay:// chrome-extension/appidinhere?id = auth963268」時返回的錯誤。我似乎無法覆蓋這一點,我不知道什麼sotragerelay或它來自哪裏。 – artparks
你有沒有找到相同的解決方案? – pd176