@ capgo/ 电容- recaptcha
在您的 Capacitor app 中保护签名、登录和付款, 网络、 Android 和 iOS 上的 reCAPTCHA 令牌, 并由您的后端验证 .
🤖 建筑与AI编码代理? 安装 Capgo 技能 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用
@capgo/capacitor-recaptcha在您的电容应用程序中:npx skills add Cap-go/capgo-skills。然后问你的经纪人: 添加@capgo/capor-recaptcha到我的Capacitor应用上,并把它接上。" 代理设置指南 • 妇女 主机磁共振
主要特点
- 装入数字 :
load()初始化并缓存 reCAPTCHA 客户端. - 执行数字 :
execute()返回动作的符号,准备后端验证. - 移动: reCAPTCHA Entertainment SDKs on Android and iOS. 互联网档案馆的存檔,存档日期2013-12-20.
- 网页: reCAPTCHA v3 与 (中文(简体) )
api.js,或与enterprise.js。 。 。 . - 每个平台键数字 :
androidSiteKey, (中文(简体) ),iosSiteKey财务报告和审定财务报表webSiteKey赢得共享siteKey设置在同一级别. - 平台: iOS,Android和Web. 互联网档案馆的存檔,存档日期2013-12-02.
在Web,Android,和iOS上生成 reCAPTCHA 令牌的电容插件.
它支持:
- 网络 reCAPTCHA v3 与
api.js - 使用 Web reCAPTCHA 企业
enterprise.js - Android和iOS reCAPTCHA 企业/移动式SDKs
在登录,注册,取出,密码重置等敏感动作前使用,或者在易被滥用的形式提交之前使用. 信使必须发送到您的后端 并通过创建 reCAPTCHA 评估来核实.
兼容性
| 插件版本 | 电容兼容性 | 维护 |
|---|---|---|
| v八.。 。 。 . | v八.。 。 。 . | 对 |
| v.。 。 。 . | v.。 。 。 . | 应要求 |
| v6 (英语).。 。 。 . | v6 (英语).。 。 。 . | 没有 |
| 页:1.。 。 。 . | 页:1.。 。 。 . | 没有 |
此插件的主要版本沿用了Capacitor的主要版本.
安装
您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins
然后使用下列提示:
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-recaptcha` plugin in my project.
如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:
npm install @capgo/capacitor-recaptcha
npx cap sync
配置
import type { CapacitorConfig } from '@capacitor/cli';
import '@capgo/capacitor-recaptcha';
const config: CapacitorConfig = {
appId: 'com.example.app',
appName: 'Example',
webDir: 'dist',
plugins: {
Recaptcha: {
androidSiteKey: 'ANDROID_SITE_KEY',
iosSiteKey: 'IOS_SITE_KEY',
webSiteKey: 'WEB_SITE_KEY',
enterprise: true,
},
},
};
export default config;
也可以通过 siteKey 直接转到 load() 或者说 execute() 当密钥是针对环境的.
使用量
import { Recaptcha } from '@capgo/capacitor-recaptcha';
await Recaptcha.load();
const { token } = await Recaptcha.execute({
action: 'login',
});
await fetch('/api/recaptcha-assessment', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({ token, action: 'login' }),
});
常规Web reCAPTCHA v3:
const { token } = await Recaptcha.execute({
siteKey: 'WEB_V3_SITE_KEY',
enterprise: false,
action: 'signup',
});
平台设置
机器人
在 Google Cloud reCAPTCHA 中创建一个Android 移动应用程序密钥并将其用作 androidSiteKey 或者说 siteKey。 。 。 .
Android使用Google的移动 reCAPTCHA SDK. 常规的,非企业的 reCAPTCHA v3 只能在这个插件的Web上提供 ; enterprise: false 在Android上被拒绝.
插件取决于 :
com.google.android.recaptcha:recaptcha:18.8.0
Google的Android reCAPTCHA SDK要求消费应用中的核心库去蛋白. 插件可以在 npx cap sync android 并添加:
com.android.tools:desugar_jdk_libs:2.1.5
您可以在您的应用程序 Gradle 配置中覆盖版本 recaptchaVersion。 。 。 .
您可以通过 desugarJdkLibsVersion。 。 。 .
iOS系统
在 Google Cloud reCAPTCHA 中创建一个 iOS 移动应用程序密钥并将其用作 iosSiteKey 或者说 siteKey。 。 。 .
iOS 使用谷歌软件 RecaptchaEnterprise 移动 SDK. 常规的,非企业的 reCAPTCHA v3 只能在这个插件的Web上提供 ; enterprise: false 在 iOS 上被拒绝.
插件同时传送 Swift 套件管理器和 CocoaPods 元数据并依赖于 Google RecaptchaEnterprise iOS SDK. (英语).
网页
使用网站密钥 。 设定 enterprise: true 企业或 enterprise: false 用于常规 reCAPTCHA v3.
页:1
- 托肯是单用,应当在受保护后端请求前立即生成.
- 通过创建 reCAPTCHA 评估来验证你后端的每个符号.
- 科多瓦旧地
sitekeyAndroid财务报告和审定财务报表sitekeyWeb选项名在调用选项和 Capacitor 配置中被接受为迁移别名. sitekeyIos财务报告和审定财务报表sitekeyIOS在调用选项和Capacitor配置中被接受为iOS迁移别名.
示例应用
这个 example-app/ 本地插件的文件夹链接 file:..。 。 。 .
cd example-app
npm install
npm run start
API 密码
reCAPTCHA 插件 API.
装入(...)
load(options?: LoadOptions | undefined) => Promise<LoadResult>
装入并缓存当前平台的 reCAPTCHA 客户端.
execute() 在需要时自动加载客户端,所以调用这种方法是可选的.
| 参数 | 类型 |
|---|---|
options | LoadOptions |
回返情况: Promise<LoadResult>
自: 8.0.0 (单位:千美元)
执行(...)
execute(options: ExecuteOptions) => Promise<ExecuteResult>
执行reCAPTCHA的动作并返回后端评估的符号.
| 参数 | 类型 |
|---|---|
options | ExecuteOptions |
回返情况: Promise<ExecuteResult>
自: 8.0.0 (单位:千美元)
获取 PluginVersion ()
getPluginVersion() => Promise<PluginVersionResult>
返回平台执行版本标记 .
回返情况: Promise<PluginVersionResult>
自: 8.0.0 (单位:千美元)
接口
装入结果
客户端装入后返回结果 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
loaded | boolean | 平台客户端是否准备好 . | 8.0.0 (单位:千美元) |
siteKey | string | 用于装入客户端的站点密钥 . | 8.0.0 (单位:千美元) |
enterprise | boolean | 是否请求企业模式 . | 8.0.0 (单位:千美元) |
platform | 'web' | 'ios' | 'android' | 装入客户端的平台 . | 8.0.0 (单位:千美元) |
装入选项
用于装入 reCAPTCHA 客户端的选项 .
| Prop | 类型 | 说明 | 默认 | 自兹 |
|---|---|---|---|---|
siteKey | string | 此调用所用的站点密钥 。 如果省略,插件会从 Capacitor 配置读取平台特定密钥. | 8.0.0 (单位:千美元) | |
androidSiteKey | string | Android站点密钥. | 8.0.0 (单位:千美元) | |
iosSiteKey | string | iOS站点密钥. | 8.0.0 (单位:千美元) | |
webSiteKey | string | 网站密钥. | 8.0.0 (单位:千美元) | |
sitekeyAndroid | string | 科尔多瓦遗产 Android站点密钥别名. | 8.1.1 国家 | |
sitekeyIos | string | 遗产式iOS站点关键别名. | 8.1.1 国家 | |
sitekeyIOS | string | 遗产式iOS站点关键别名. | 8.1.1 国家 | |
sitekeyWeb | string | 科尔多瓦遗产 网站密钥别名. | 8.1.1 国家 | |
enterprise | boolean | 网络模式开关. 网络使用 enterprise.js 当真实和正常的 reCAPTCHA v3 api.js 当虚假。 Android和iOS使用Google的移动 reCAPTCHA SDK,它只是企业号/移动. 通过 enterprise: false 在Android或iOS上被拒绝. | true | 8.0.0 (单位:千美元) |
language | string | Web reCAPTCHA脚本的可选语言代码. | 8.0.0 (单位:千美元) |
执行结果
执行保护动作后返回结果 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
token | string | 由reCAPTCHA生成的托肯. 把这个发送给您的后端, 并在那里创建评估 . | 8.0.0 (单位:千美元) |
action | string | 用于生成符号的动作名 . | 8.0.0 (单位:千美元) |
siteKey | string | 用于生成令牌的站点密钥 . | 8.0.0 (单位:千美元) |
enterprise | boolean | 是否请求企业模式 . | 8.0.0 (单位:千美元) |
platform | 'web' | 'ios' | 'android' | 生成符号的平台. | 8.0.0 (单位:千美元) |
执行选项
用于执行被保护动作的选项 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
action | string | 动作名来保护. 使用有意义的名称, 如 login, (中文(简体) ), signup, (中文(简体) ), checkout,或 password_reset。 。 。 . | 8.0.0 (单位:千美元) |
timeout | number | 可选本土处决超时数以毫秒计. 提供Android和iOS时执行至少5000ms的超时. 此值在 Web 被忽略 . | 8.0.0 (单位:千美元) |
插件变压器
插件版本有效载荷 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
version | string | 版本标识符由平台执行返回. | 8.0.0 (单位:千美元) |