OAuthProvider class

일반 OAuthCredential을 생성하는 제공자입니다.

서명:

export declare class OAuthProvider extends BaseOAuthProvider 

확장: BaseOAuthProvider

메소드

메서드 특수키 설명
credential(params) 일반 OAuth 제공업체의 액세스 토큰 또는 ID 토큰에서 OAuthCredential을 생성합니다.
credentialFromError(오류) static 로그인, 연결 또는 재인증 작업 중에 발생한 AuthError에서 기본 OAuthCredential을 추출하는 데 사용됩니다.
credentialFromJSON(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;

매개변수

매개변수 유형 설명
params OAuthCredentialOptions ID 토큰, 액세스 토큰, 원시 nonce 또는 ID 토큰 문자열을 포함하는 options 객체입니다.

반환:

OAuthCredential

// `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 오류

반환:

OAuthCredential | 없음

OAuthProvider.credentialFromJSON()

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

서명:

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

매개변수

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

반환:

OAuthCredential

OAuthProvider.credentialFromResult()

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

서명:

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

매개변수

매개변수 유형 설명
사용자 인증 정보 UserCredential 사용자 인증 정보입니다.

반환:

OAuthCredential | 없음

예 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;