OneCaptcha

轻量级行为验证服务,多维度行为分析,有效区分人机操作

快速接入
-
调用次数
-
验证通过
-
通过率

快速接入

1. 前端引入 SDK

<button id="captcha-btn">点击验证</button> <script src="https://captcha.yinxh.fun/js/sdk.js"></script> <script> OneCaptcha.init({ el: '#captcha-btn', server: 'https://captcha.yinxh.fun', onSuccess: function(token) { console.log('验证通过, token:', token); }, onFail: function() { console.log('验证失败'); }, onClose: function() { console.log('用户关闭'); } }); </script>

2. 后端校验 Token

用户验证通过后,前端收到 token,将其发送到你的后端,再调用验证服务校验:

POST https://captcha.yinxh.fun/api/validate-token Content-Type: application/json { "token": "用户提交的 token" } // 响应 { "valid": true }

3. Go 后端示例

func verifyCaptcha(token string) bool { body, _ := json.Marshal(map[string]string{"token": token}) resp, err := http.Post( "https://captcha.yinxh.fun/api/validate-token", "application/json", bytes.NewReader(body), ) if err != nil { return false } defer resp.Body.Close() var result struct{ Valid bool `json:"valid"` } json.NewDecoder(resp.Body).Decode(&result) return result.Valid }

SDK 参数

参数类型必填说明
elstring触发按钮的 CSS 选择器
serverstring验证服务地址
onSuccessfunction验证通过回调,参数为 token
onFailfunction验证失败回调
onClosefunction用户关闭回调
zIndexnumber弹窗层级,默认 999999

API 文档

GET /api/challenge

获取验证挑战,返回挑战 ID、模式、PoW 参数等。受频率限制保护。

POST /api/verify

提交验证结果,包含行为数据、指纹数据和模式交互结果。

POST /api/validate-token

校验 token 有效性,供第三方后端调用。

GET /api/image

获取随机验证背景图片,返回 JPEG 格式。