GoogleAuthProvider class

用來為 ProviderId.GOOGLE 產生 OAuthCredential 的供應商。

簽名:

export declare class GoogleAuthProvider extends BaseOAuthProvider 

擴充:BaseOAuthProvider

建構函式

建構函式 修飾符 說明
(建構函式)() 建構 GoogleAuthProvider 類別的新例項

屬性

屬性 修飾符 類型 說明
static google.com 請一律設為 SignInMethod.GOOGLE。
PROVIDER_ID static google.com 一律設為 ProviderId.GOOGLE。

方法

方法 修飾符 說明
credential(idToken, accessToken) static 為 Google 建立憑證。必須提供至少一個 ID 權杖和存取權杖。
credentialFromError(錯誤) static 用於從登入、連結或重新驗證作業期間擲回的 AuthError 中,擷取基礎 OAuthCredential
credentialFromResult(使用者憑證) static 用於從 UserCredential 擷取基礎 OAuthCredential

GoogleAuthProvider.(建構函式)

建構 GoogleAuthProvider 類別的新例項

簽名:

constructor();

GoogleAuthProvider.GOOGLE_SIGN_IN_METHOD

請一律設為 SignInMethod.GOOGLE。

簽名:

static readonly GOOGLE_SIGN_IN_METHOD: 'google.com';

GoogleAuthProvider.PROVIDER_ID

一律設為 ProviderId.GOOGLE。

簽名:

static readonly PROVIDER_ID: 'google.com';

GoogleAuthProvider.credential()

為 Google 建立憑證。必須提供至少一個 ID 權杖和存取權杖。

簽名:

static credential(idToken?: string | null, accessToken?: string | null): OAuthCredential;

參數

參數 類型 說明
idToken 字串 |空值 Google ID 權杖。
accessToken 字串 |空值 Google 存取權杖

傳回:

OAuth 憑證

範例

// \`googleUser\` from the onsuccess Google Sign In callback.
const credential = GoogleAuthProvider.credential(googleUser.getAuthResponse().id_token);
const result = await signInWithCredential(credential);

GoogleAuthProvider.credentialFromError()

用於從登入、連結或重新驗證作業期間擲回的 AuthError 中,擷取基礎 OAuthCredential

簽名:

static credentialFromError(error: FirebaseError): OAuthCredential | null;

參數

參數 類型 說明
錯誤 FirebaseError

傳回:

OAuth 憑證 |空值

GoogleAuthProvider.credentialFromResult()

用於從 UserCredential 擷取基礎 OAuthCredential

簽名:

static credentialFromResult(userCredential: UserCredential): OAuthCredential | null;

參數

參數 類型 說明
使用者憑證 使用者憑證 使用者憑證。

傳回:

OAuth 憑證 |空值

範例 1

// Sign in using a redirect.
const provider = new GoogleAuthProvider();
// Start a sign in process for an unauthenticated user.
provider.addScope('profile');
provider.addScope('email');
await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
if (result) {
  // This is the signed-in user
  const user = result.user;
  // This gives you a Google Access Token.
  const credential = GoogleAuthProvider.credentialFromResult(result);
  const token = credential.accessToken;
}

範例 2

// Sign in using a popup.
const provider = new GoogleAuthProvider();
provider.addScope('profile');
provider.addScope('email');
const result = await signInWithPopup(auth, provider);

// The signed-in user info.
const user = result.user;
// This gives you a Google Access Token.
const credential = GoogleAuthProvider.credentialFromResult(result);
const token = credential.accessToken;