跳过内容

@capgo/capacitor-social-login

所有社交登录都在一个插件中。

概述

概述

@capgo/capacitor-social-login 是 Web、iOS 和 Android 的全能社交验证插件。

它实现了:

  • Google Sign-In with Android Credential Manager
  • 使用 Apple 登录,包括 Android 上的 OAuth
  • Facebook 使用当前的 Facebook SDK
  • Twitter/X 通过 OAuth 2.0
  • 通用 OAuth2 和 OIDC 提供商,包括 GitHub、Microsoft Entra ID、Auth0、Okta、Keycloak 和其他符合标准的服务器

它也是从 Ionic Appflow Social Login 或 Ionic Auth Connect 迁移到 Capgo 的 Capgo 迁移路径

分叉和迁移说明

标题:分叉和迁移说明

该插件最初是 __CAPGO_KEEP_0__ 的分叉 @codetrix-studio/capacitor-google-auth.原始包被视为已归档,因此 Capgo 维护此插件作为支持的替代品

如果您仍在使用 __CAPGO_KEEP_1__,请遵循 @codetrix-studio/capacitor-google-auth__CAPGO_KEEP_2__ 如果您正在从 Ionic Auth Connect 迁移,使用内置的 .

__CAPGO_KEEP_3__ 迁移指南 SocialLoginAuthConnect 简化的社交登录插件 auth0, azure, cognito, oktaonelogin 提供商名称:

兼容性

兼容性
插件版本Capacitor兼容性维护
v8.xv8.x
v7.xv7.x按需
v6.xv6.x
v5.xv5.x

本插件的主要版本遵循 Capacitor 的主要版本。例如,使用插件 v8 与 Capacitor 8。仅最新的主要版本得到积极维护。

观看该插件设置和登录流程的快速演示。

  • initialize - 初始化插件。
  • login - 使用所选提供商登录。
  • logout - 退出。
  • isLoggedIn - 是否已登录。
方法描述
initialize初始化插件。
login使用选定的提供者登录。
logout注销。
isLoggedIn是否已登录。
getAuthorizationCode获取当前授权 code。
refresh刷新访问令牌。
refreshTokenOAuth2 刷新令牌助手(用于内置 OAuth2 提供者)。
handleRedirectCallback仅限 Web:处理 OAuth 重定向回调并返回解析结果。
decodeIdToken解码 JWT(通常是 OIDC ID 令牌)以获取其声明。
getAccessTokenExpirationDate将访问令牌过期时间戳(以毫秒为单位的 Unix 时间戳)转换为 ISO 日期字符串。
isAccessTokenAvailable检查是否有可用的访问令牌(非空)。
isAccessTokenExpired检查是否有过期的访问令牌。
isRefreshTokenAvailable检查是否有可用的刷新令牌(非空)。
providerSpecificCall执行提供商特定的调用。
getPluginVersion获取本地Capacitor插件版本。
openSecureWindow打开一个安全的窗口进行OAuth2认证。对于Web,应在重定向页面中包含code,以使用广播通道将重定向URL发送到应用程序。例如: html <html> <head></head> <body> <script> const searchParams = new URLSearchParams(location.search) if (searchParams.has("code")) { new BroadcastChannel("my-channel-name").postMessage(location.href); window.close(); } </script> </body> </html> 对于移动设备,应有一个重定向URI,打开应用程序,例如: myapp://oauth_callback/ 并确保在应用程序的info.plist中注册它: xml <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>myapp</string> </array> </dict> </array> 并在AndroidManifest.xml文件中注册它: xml <activity> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="oauth_callback" android:scheme="myapp" /> </intent-filter> </activity> .

此参考是从 src/definitions.tscapacitor-social-login.

继续从@capgo/capacitor-social-login

标题:继续从@capgo/capacitor-social-login

如果您正在使用 @capgo/capacitor-social-login 与@__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login Using @capgo/capacitor-social-login @capgo/capacitor-social-login 用于@capgo/capacitor-social-login中的本机功能 @capgo/capacitor-passkey 用于@capgo/capacitor-passkey中的实现细节、@capgo/capacitor-native-biometric 在 @capgo/capacitor-native-biometric 中实现详细信息 双因素身份验证 在双因素身份验证中实现详细信息,并且 SSO (企业) 在 SSO (企业) 中实现详细信息。