GithubAuthProvider class

用于为ProviderId生成OAuthCredential 的提供程序.GITHUB。

GitHub 需要 OAuth 2.0 重定向,因此您可以直接处理重定向,或使用signInWithPopup()处理程序:

签名:

export declare class GithubAuthProvider extends BaseOAuthProvider 

扩展: BaseOAuthProvider

构造函数

构造函数修饰符描述
(构造函数)()构造GithubAuthProvider类的新实例

特性

财产修饰符类型描述
GITHUB_SIGN_IN_METHOD static 'github.com'始终设置为SignInMethod .GITHUB。
提供商_ID static 'github.com'始终设置为ProviderId .GITHUB。

方法

方法修饰符描述
凭证(accessToken) static为 Github 创建凭证。
凭证来自错误(错误) static用于从登录、链接或重新身份验证操作期间引发的AuthError中提取基础OAuthCredential
凭证来自结果(用户凭证) static用于从UserCredential中提取底层OAuthCredential

GithubAuthProvider.(构造函数)

构造GithubAuthProvider类的新实例

签名:

constructor();

GithubAuthProvider.GITHUB_SIGN_IN_METHOD

始终设置为SignInMethod .GITHUB。

签名:

static readonly GITHUB_SIGN_IN_METHOD: 'github.com';

GithubAuthProvider.PROVIDER_ID

始终设置为ProviderId .GITHUB。

签名:

static readonly PROVIDER_ID: 'github.com';

GithubAuthProvider.credential()

为 Github 创建凭证。

签名:

static credential(accessToken: string): OAuthCredential;

参数

范围类型描述
访问令牌细绳Github 访问令牌。

返回:

OAuth凭证

GithubAuthProvider.credentialFromError()

用于从登录、链接或重新身份验证操作期间引发的AuthError中提取基础OAuthCredential

签名:

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

参数

范围类型描述
错误Firebase错误

返回:

OAuth 凭证|无效的

GithubAuthProvider.credentialFromResult()

用于从UserCredential中提取底层OAuthCredential

签名:

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

参数

范围类型描述
用户凭证用户凭证用户凭证。

返回:

OAuth 凭证|无效的

实施例1

// Sign in using a redirect.
const provider = new GithubAuthProvider();
// Start a sign in process for an unauthenticated user.
provider.addScope('repo');
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 Github Access Token.
  const credential = GithubAuthProvider.credentialFromResult(result);
  const token = credential.accessToken;
}

实施例2

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

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