注意:本项目提供的Demo的前端实现方法均是面向PC端的。 如果需要移动端的canvas功能,请参考canvas的前端文档。
- GeetestLib.java
- 提供只带拼图行为验证的功能
- GeetestMsgLib.java
- 提供带短信功能打包的完整功能,继承于GeetestLib.java所定义的类
包名:com.geetest.sdk.java.web.demo
- GeetestConfig.java
- Web用户配置文件。此处填写用户自己申请的验证模块ID/KEY
- StartCaptchaServlet.java
- 用户判断极验服务器是否Down机的示例Servlet,页面生成前置处理
- VerifyLoginServlet.java
- 提交验证调用Sdk的示例Servlet
- login.jsp
- 行为验证的前端示范页面
目前这个demo页面比以前复杂的原因如下:
- 实现failback的前端逻辑,在正常和非正常之间形成无缝自动化切换。
- 在极验服务器down机的情况下,避免同步请求长达20s的阻塞页面
- 在极验服务down机头部下,仍然先优先使用异步加载,把加载时间减少一半。
包名:com.geetest.sdk.java.msg.demo
- GeetestMsgConfig.java
- Web用户配置文件。此处填写用户自己申请的验证模块ID/KEY
- StartMsgCaptchaServlet.java
- 用户判断极验服务器是否Down机的示例Servlet,页面生成前置处理
- VerifyGeetestServlet.java
- 获取短信前的一次验证逻辑控制
- VerifyMsgServlet.java
- 提交短信验证示例Servlet
- msg_login.jsp
- 短信+行为验证的前端示范页面
- ./lib/java-json.jar
- Java的json解码包。用户如果有其它包可以在此替换。
搭建Eclipse+Tomcat的开发环境
- 从GitHub中clone一份到本地
- 使用Eclipse直接import一个项目
- 打开tomcat
- 在浏览器中访问http://localhost:8080/gt-java-sdk/login.jsp即可看到Demo界面
如果极验服务器出现故障,会全自动切换到备选验证,以确保网站主的正常功能能够进行。请有开发能力的网站请务必完成failback后的本地化代码功能,以减少不必要的损失。
QQ:1295351490
- 加入了同一会话的我实例的SDK函数实现部分
- 规范和修改函数的命名的名称
- 修复failback的重放漏洞
- 优化了前端逻辑,在down机状态下采用动态异步请求的方式,响应速度更快
- 增加了在极验服务器down机情况下的failback方案的具体实现
- 一些代码重新命名
- 更新文档
- 修复web.xml里面的命名问题
- 增加了gt-message的demo
- 采用面向对象的方式,重构了代码
- 后续会继续重构此代码,但是此项目已经是可用版本
- 将接口封装更彻底,让用户的使用更便捷。
- 改变包的相对路径,用户代码和库文件逻辑更清晰
- 服务端使用session传值,安全性更高
- 根据极验服务升级写的全新的SDK使用方法Demo
- 实现前后端代码完全分离的调用模式
- 将用户要配置的参数以文件方式独立出来
- 更丰富的前端api调用示例
- 优化一个session的传值问题
- 以submit为主,ajax提交为辅助(注释掉),形成完整的流程
- 一个session的传值代码写得太丑,不要这个版本了。
- 修改了检查down机的时间超时为2s
- 加入了前端中https的设置函数
- 使用新的版本编号。加入了一个前缀的大版本号。
- 在二次验证的时候,加入了SDK版本号和SDK语言类型。
- 修改了sdk版本的表示字段为sdk,内容一致
- 统一命名方式
- chanllege的生成函数转移到服务器端
- 服务器端重复的failback去掉
- chanllege的生成函数转移到服务器端
- 修复了一些小bug
- 和服务端联调成功
- SDK加入了自主生成id的接口
- 前端src引用有了加强版
- SDK的版本编号规则发生变化
让forbidden的情况在仍然提示通过,但客户服务器仍然能够知晓原因。
- GeetestLib.java 中加入了增强型的验证结果判定的API
- VerifyLoginServlet.java 中重新对新接口进行了引用。
- 规范sdk的发布流程,形成持续集成
- 调整结构,简化开发人员使用步骤。做到1分钟入门的Demo
- 加入failback“备胎”验证码的功能
- 检验服务器数据读取时长限定为1s后就算超时,就报超时