ผู้ให้บริการสำหรับการสร้าง OAuthCredential ทั่วไป .
ลายเซ็น:
export declare class OAuthProvider extends BaseOAuthProvider
ขยาย: BaseOAuthProvider
วิธีการ
วิธี | ตัวดัดแปลง | คำอธิบาย |
---|---|---|
หนังสือรับรอง (พารามิเตอร์) | สร้าง OAuthCredential จากโทเค็นการเข้าถึงหรือโทเค็น ID ของผู้ให้บริการ OAuth ทั่วไป | |
ข้อมูลรับรองจากข้อผิดพลาด (ข้อผิดพลาด) | static | ใช้เพื่อแยก OAuthCredential พื้นฐานจาก AuthError ซึ่งเกิดขึ้นระหว่างการลงชื่อเข้าใช้ ลิงก์ หรือการตรวจสอบสิทธิ์อีกครั้ง |
ข้อมูลรับรองจาก JSON (json) | static | สร้าง OAuthCredential จากสตริง JSON หรือออบเจ็กต์ธรรมดา |
หนังสือรับรองจากผลลัพธ์ (ข้อมูลรับรองผู้ใช้) | static | ใช้เพื่อแยก OAuthCredential พื้นฐานจาก UserCredential . |
OAuthProvider.credential()
สร้าง OAuthCredential จากโทเค็นการเข้าถึงหรือโทเค็น ID ของผู้ให้บริการ OAuth ทั่วไป
จำเป็นต้องมี nonce แบบดิบเมื่อมีการระบุโทเค็น ID พร้อมช่อง nonce แฮช SHA-256 ของ nonce แบบดิบต้องตรงกับช่อง nonce ในโทเค็น ID
ลายเซ็น:
credential(params: OAuthCredentialOptions): OAuthCredential;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
พารามิเตอร์ | ตัวเลือก OAuthCredential | อ็อบเจ็กต์ตัวเลือกที่มีโทเค็น ID, โทเค็นการเข้าถึงและ nonce แบบดิบ หรือสตริงโทเค็น ID |
ผลตอบแทน:
ตัวอย่าง
// `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()
ใช้เพื่อแยก OAuthCredential พื้นฐานจาก AuthError ซึ่งเกิดขึ้นระหว่างการลงชื่อเข้าใช้ ลิงก์ หรือการตรวจสอบสิทธิ์อีกครั้ง
ลายเซ็น:
static credentialFromError(error: FirebaseError): OAuthCredential | null;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
ข้อผิดพลาด | ข้อผิดพลาดของ Firebase |
ผลตอบแทน:
ข้อมูลรับรอง OAuth | โมฆะ
OAuthProvider.credentialFromJSON()
สร้าง OAuthCredential จากสตริง JSON หรือออบเจ็กต์ธรรมดา
ลายเซ็น:
static credentialFromJSON(json: object | string): OAuthCredential;
พารามิเตอร์
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
---|---|---|
json.json | วัตถุ | เชือก | วัตถุธรรมดาหรือสตริง JSON |
ผลตอบแทน:
OAuthProvider.credentialFromResult()
ใช้เพื่อแยก OAuthCredential พื้นฐานจาก UserCredential .
ลายเซ็น:
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;