登录示例(验证方式可切换)

container = - isPass = false again = false
· 验证方式与打开方式均可切换:内联方式验证条在页面内;弹窗方式点击「登录」弹出验证,六种方式都支持。
· 页面只需引用 load.js 一个入口;加载期间容器内自动显示占位条。
· 弹出式配置统一在 load.js 配置区(或 DinoCaptchaConfig / DinoCaptcha.configure())加载: 事件绑定用 DinoCaptcha.bind() / DinoCaptcha.popup(),成功/失败/打开/关闭均有 dinocaptcha:* 事件。
· 弹窗为独立面板(无边框、无展开动画):点击验证显示加载动画与「验证中」,其他方式加载完直接呈现挑战。

接入代码

<!-- 1. 配置(appId 在控制台创建应用后获得) -->
<script>window.DinoCaptchaConfig = {
    apiBase: '/captcha/api/',
    appId: '你的app_id'
};</script>
<script src="/captcha/load.js"></script>

<!-- 2. 容器(自动挂载) -->
<div id="box" data-dino-captcha></div>

// 3. 业务侧读取状态 / 重新验证 / 后端二次校验
captcha.isPass                 // 是否验证成功
captcha.again = true           // 触发重新验证
POST /captcha/api/open-verify.php  // 后端核验 token

// 4. 弹窗方式:点击登录弹出验证(六种方式通用)
DinoCaptcha.bind('#login-btn', { mode: 'click' })
    .on(r => { if (r.pass) { /* 提交业务登录 */ } });
验证通过后,业务后端务必调用 open-verify 二次核验 token,防止前端伪造。