OAuthProvider class

Nhà cung cấp để tạo OAuthCredential chung.

Chữ ký:

export declare class OAuthProvider extends BaseOAuthProvider 

Mở rộng: BaseOAuthProvider

Phương thức

Phương thức Công cụ sửa đổi Mô tả
thông tin xác thực(tham số) Tạo OAuthCredential từ mã truy cập hoặc mã thông báo nhận dạng của nhà cung cấp OAuth chung.
credentialFromError(lỗi) static Dùng để trích xuất OAuthCredential cơ bản từ AuthError được gửi trong thao tác đăng nhập, liên kết hoặc xác thực lại.
xác thựcFromJSON(json) static Tạo OAuthCredential từ chuỗi JSON hoặc đối tượng thuần tuý.
credentialFromResult(userCredential) static Dùng để trích xuất OAuthCredential cơ bản từ UserCredential.

OAuthProvider.credential()

Tạo OAuthCredential từ mã truy cập hoặc mã thông báo nhận dạng của nhà cung cấp OAuth chung.

Bạn phải cung cấp số chỉ dùng một lần thô khi cung cấp mã thông báo mã nhận dạng có trường số chỉ dùng một lần. Hàm băm SHA-256 của số chỉ dùng một lần thô phải khớp với trường số chỉ dùng một lần trong mã thông báo mã nhận dạng.

Chữ ký:

credential(params: OAuthCredentialOptions): OAuthCredential;

Thông số

Thông số Loại Mô tả
tham số OAuthCredentialOptions Đối tượng tuỳ chọn chứa mã thông báo mã nhận dạng, mã truy cập và số chỉ dùng một lần thô hoặc chuỗi mã thông báo mã nhận dạng.

Trường hợp trả lại hàng:

Thông tin xác thực OAuth

Ví dụ

// `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()

Dùng để trích xuất OAuthCredential cơ bản từ AuthError được gửi trong thao tác đăng nhập, liên kết hoặc xác thực lại.

Chữ ký:

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

Thông số

Thông số Loại Mô tả
error Lỗi Firebase

Trường hợp trả lại hàng:

Thông tin đăng nhập OAuth | rỗng

OAuthProvider.credentialFromJSON()

Tạo OAuthCredential từ chuỗi JSON hoặc đối tượng thuần tuý.

Chữ ký:

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

Thông số

Thông số Loại Mô tả
JSON đối tượng | chuỗi Đối tượng thuần tuý hoặc chuỗi JSON

Trường hợp trả lại hàng:

Thông tin xác thực OAuth

OAuthProvider.credentialFromResult()

Dùng để trích xuất OAuthCredential cơ bản từ UserCredential.

Chữ ký:

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

Thông số

Thông số Loại Mô tả
thông tin xác thực người dùng Thông tin đăng nhập của người dùng Thông tin đăng nhập của người dùng.

Trường hợp trả lại hàng:

Thông tin đăng nhập OAuth | rỗng

Ví dụ 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;
}

Ví dụ 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;