前言
滑块验证码是一种“行为式验证码”,它要求用户通过拖拽滑块到指定位置来完成验证,其核心目的是区分操作者是真人还是自动化程序(机器人)。
滑块验证码凭借其高安全性和对用户体验的友好性,已广泛应用于各类需要防范机器恶意攻击的场景:
- 账号登录与注册防护
防暴力破解与撞库: 在用户登录时,滑块验证能有效阻止黑客利用自动化工具高频尝试密码或进行撞库攻击。
防批量注册: 在注册环节,通过拦截机器脚本,防止黑产批量生成虚假账号(如“水军”或“羊毛党”),保障平台的真实用户生态。 - 核心业务接口与表单防护
防恶意刷单与爬虫: 在抢票、抢购秒杀或评论发帖场景中,滑块验证能有效拦截自动化抢单脚本和恶意爬虫,保护业务数据不被滥用,维护公平的交易环境。 - 营销活动与内容社区防刷
活动防刷: 在抽奖、优惠券领取、投票或问卷调查中,防止机器批量刷取奖励或操纵投票结果,保障营销预算精准触达真实用户。
防垃圾内容: 在论坛发帖、文章评论或留言板上,有效阻断垃圾广告机器人和恶意引流脚本的自动发布。 - 账号安全风控
密码多次输错、异地登录、风险访问时弹出滑块验证,加强账号安全。
API介绍
本验证码接口接入包括客户端(浏览器)接入和服务端接入,支持滑动拼图、文字点选和图形点选三种验证方式:
- 滑动拼图: 轻轻一滑即刻完成验证,适用于追求用户体验的业务场景
- 文字点选: 顺序点击图中文字即可完成验证,提高机器识别难度的同时,保证真实用户可读
- 图形点选: 依次点击图中图形,对抗空间大,安全系数极高


客户端接口
- 客户端完成滑块动作,滑块正确则返回ticket;
- 客户端完成验证之后,再用客户端返回的ticket,调用服务端ticket接口完成验证。
Web 页面需引入验证码的js,在业务需要验证时,唤起验证码进行验证。
<script type="text/javascript" src="js文件地址"></script>
服务端接入
客户端验证成功之后,需要由接入者的服务端再调用服务商的服务端接口完成验证,本接口即完成该功能
请求参数
| 名称 | 类型 | 必须 |
说明
|
|---|---|---|---|
| captchaAppId | String | 是 | 验证码 captchaAppId ,和客户端一致。联系服务商申请获取 |
| ticket | String | 是 | 验证码返回给用户的票据 |
| randstr | String | 是 | 验证票据需要的随机字符串 |
| captchaSign | String | 是 | 验证码签名,详见验证码签名说明 |
| ip | String | 否 | 用户操作来源的外网IP |
验证成功返回样例
{
"code": 200,//返回码,详见返回码说明
"msg": "成功",//code对应的描述
"taskNo": "987272522132093927999832" //code对应的描述
}
```