@capgo/capacitor-social-login 是 Web、iOS 和 Android 的全能社交验证插件。
它实现了:
- Google Sign-In with Android Credential Manager
- 使用 Apple 登录,包括 Android 上的 OAuth
- 使用 Facebook 的当前 Facebook SDK
- 通过 OAuth 2.0 的 Twitter/X
- 包括 GitHub 在内的通用 OAuth2 和 OIDC 提供商,例如 Microsoft Entra ID、Auth0、Okta、Keycloak 和其他符合标准的服务器
它也是从 Ionic Appflow Social Login 或 Ionic Auth Connect 迁移到 Capgo 的 Capgo 迁移路径
分叉和迁移说明
标题:分叉和迁移说明此插件最初是从 @codetrix-studio/capacitor-google-auth. The original package is effectively archived, so Capgo maintains this plugin as the supported replacement.
如果您仍在使用 @codetrix-studio/capacitor-google-auth,请遵循 的 .
旧版 Google Auth 迁移指南 SocialLoginAuthConnect 简化的 auth0, azure, cognito, okta和 onelogin 提供商名称:
兼容性
标题为“兼容性”| 插件版本 | Capacitor兼容性 | 维护 |
|---|---|---|
| v8.x | v8.x | 是 |
| v7.x | v7.x | 按需 |
| v6.x | v6.x | 否 |
| v5.x | v5.x | 否 |
该插件的主要版本遵循Capacitor的主要版本。例如,使用插件v8与Capacitor 8。仅最新的主要版本被积极维护。
视频教程
视频教程标题观看该插件设置和登录流程的快速演示。
核心功能
核心功能标题initialize- 初始化插件。login- 使用所选提供商登录。logout- 退出。isLoggedIn- 是否已登录。
公共 API
公共 API 标题| 方法 | 描述 |
|---|---|
initialize | 初始化插件。 |
login | 使用选定的提供者登录。 |
logout | 注销。 |
isLoggedIn | 是否已登录。 |
getAuthorizationCode | 获取当前授权 code。 |
refresh | 刷新访问令牌。 |
refreshToken | OAuth2 刷新令牌助手(用于内置 OAuth2 提供者)。 |
handleRedirectCallback | 仅限 Web:处理 OAuth 重定向回调并返回解析结果。 |
decodeIdToken | 解码 JWT(通常是 OIDC ID 令牌)到其声明。 |
getAccessTokenExpirationDate | 将访问令牌过期时间戳(以毫秒为单位的 epoch)转换为 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.ts 在 capacitor-social-login.
继续在 @capgo/capacitor-social-login 中
标题:继续在 @capgo/capacitor-social-login 中如果您正在使用 @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 (企业) 中实现详细信息。