OAuthProvider class

일반 OAuthCredential을 생성하는 공급자 .

서명:

export declare class OAuthProvider extends BaseOAuthProvider 

확장: BaseOAuthProvider

행동 양식

방법 수정자 설명
자격 증명(매개변수) 일반 OAuth 공급자의 액세스 토큰 또는 ID 토큰에서 OAuthCredential을 생성합니다.
자격 증명FromError(오류) static 로그인, 링크 또는 재인증 작업 중에 발생한 AuthError 에서 기본 OAuthCredential을 추출하는 데 사용됩니다.
자격 증명FromJSON(json) static JSON 문자열 또는 일반 객체에서 OAuthCredential을 생성합니다.
credentialFromResult(userCredential) static UserCredential 에서 기본 OAuthCredential을 추출하는 데 사용됩니다. .

OAuthProvider.credential()

일반 OAuth 공급자의 액세스 토큰 또는 ID 토큰에서 OAuthCredential을 생성합니다.

Nonce 필드가 있는 ID 토큰이 제공되는 경우 원시 Nonce가 필요합니다. 원시 nonce의 SHA-256 해시는 ID 토큰의 nonce 필드와 일치해야 합니다.

서명:

credential(params: OAuthCredentialOptions): OAuthCredential;

매개변수

매개변수 유형 설명
매개변수 OAuth 자격 증명 옵션 ID 토큰, 액세스 토큰 및 원시 nonce 또는 ID 토큰 문자열을 포함하는 옵션 개체입니다.

보고:

OAuth 자격 증명

// `googleUser` from the onsuccess Google Sign In callback.
// Initialize a generate OAuth provider with a `google.com` providerId.
const provider = new OAuthProvider('google.com');
const credential = provider.credential({
  idToken: googleUser.getAuthResponse().id_token,
});
const result = await signInWithCredential(credential);

OAuthProvider.credentialFromError()

로그인, 링크 또는 재인증 작업 중에 발생한 AuthError 에서 기본 OAuthCredential을 추출하는 데 사용됩니다.

서명:

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

매개변수

매개변수 유형 설명
오류 Firebase오류

보고:

OAuth 자격 증명 | 없는

OAuthProvider.credentialFromJSON()

JSON 문자열 또는 일반 객체에서 OAuthCredential을 생성합니다.

서명:

static credentialFromJSON(json: object | string): OAuthCredential;

매개변수

매개변수 유형 설명
JSON 개체 | 끈 일반 객체 또는 JSON 문자열

보고:

OAuth 자격 증명

OAuthProvider.credentialFromResult()

UserCredential 에서 기본 OAuthCredential을 추출하는 데 사용됩니다. .

서명:

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

매개변수

매개변수 유형 설명
사용자 자격 증명 사용자 자격 증명 사용자 자격 증명.

보고:

OAuth 자격 증명 | 없는

실시예 1

// Sign in using a redirect.
const provider = new OAuthProvider('google.com');
// 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 OAuth Access Token for the provider.
  const credential = provider.credentialFromResult(auth, result);
  const token = credential.accessToken;
}

실시예 2

// Sign in using a popup.
const provider = new OAuthProvider('google.com');
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 OAuth Access Token for the provider.
const credential = provider.credentialFromResult(auth, result);
const token = credential.accessToken;