ee.data.authenticateViaOauth

透過 Google API JavaScript 用戶端程式庫,設定 EE API 呼叫的用戶端驗證。如果頁面尚未載入程式庫,系統會自動載入。如果使用者先前未曾授予存取權,系統會要求使用者授予 clientId 所識別的應用程式存取 EE 資料的權限。

在呼叫 ee.initialize() 之前,應先呼叫這個或其他驗證方法。

請注意,如果使用者先前未授予用戶端 ID 所識別應用程式的存取權,系統預設會嘗試彈出對話方塊,提示使用者授予必要權限。不過,瀏覽器可能會封鎖這個彈出式視窗。為避免發生這種情況,請指定 opt_onImmediateFailed 回呼,並在其中算繪網頁內登入按鈕,然後從這個按鈕的點擊事件處理常式呼叫 ee.data.authenticateViaPopup()。這樣一來,瀏覽器就不會封鎖彈出式視窗,因為這是使用者動作的直接結果。

系統會盡可能自動重新整理驗證權杖。您可以放心,所有非同步呼叫都會傳送適當的憑證。不過,如果是同步呼叫,您應該使用 ee.data.getAuthToken() 檢查是否有驗證權杖,如果沒有,請手動呼叫 ee.data.refreshAuthToken()。權杖重新整理作業是非同步作業,無法在同步呼叫之前,根據需求在幕後執行。

用量傳回
ee.data.authenticateViaOauth(clientId, success, error, extraScopes, onImmediateFailed, suppressDefaultScopes)
引數類型詳細資料
clientId字串應用程式的 OAuth 用戶端 ID,或空值 (如要停用已驗證的呼叫)。您可以透過 Google Developers Console 取得這項資訊。專案必須具備與指令碼執行所在網域相應的 JavaScript 來源。
success函式驗證成功時要呼叫的函式。
error函式 (選用)驗證失敗時要呼叫的函式,並傳遞錯誤訊息。如果立即 (幕後) 模式的驗證失敗,且指定了 opt_onImmediateFailed,系統會呼叫該函式,而非 opt_error。
extraScopesList<String> (選用)要要求的額外 OAuth 範圍。
onImmediateFailed函式 (選用)如果自動幕後驗證失敗,要呼叫的函式。預設值為 ee.data.authenticateViaPopup(),會繫結至傳遞的回呼。
suppressDefaultScopes布林值 (選填)如果為 true,系統只會要求 opt_extraScopes 中指定的範圍;除非在 opt_extraScopes 中明確指定,否則不會要求預設範圍。