Java登录验证码

简介: 本文实例讲述了Java登录验证功能。分享给大家供大家参考,具体如下

登录界面

7.PNG


示例实现方法如下:

packagecom.kyger;
importjakarta.servlet.ServletException;
importjakarta.servlet.http.HttpServlet;
importjakarta.servlet.http.HttpServletRequest;
importjakarta.servlet.http.HttpServletResponse;
importjava.io.IOException;
importjava.util.Map;
publicclassdemoextendsHttpServlet {
privatestaticfinallongserialVersionUID=1L;
publicdemo() {
super();
    }
protectedvoiddoGet(HttpServletRequestrequest, HttpServletResponseresponse) throwsServletException, IOException {
// 编码request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");;
response.setContentType("text/html; charset=utf-8");
// 后台处理if (request.getMethod().equals("POST")){
Stringhtml, appId, appSecret;
// 设置 AppId 及 AppSecret,在应用管理中获取appId="94dATYQa";
appSecret="6u2BhEgORjQPkO1c69mpg2z5lLTLHf6a";
KgCaptchaSDKKgRequest=newKgCaptchaSDK(appId, appSecret);
// 前端验证成功后颁发的 token,有效期为两分钟KgRequest.token=request.getParameter("kgCaptchaToken");
// 填写应用服务域名,在应用管理中获取KgRequest.appCdn="https://cdn.kgcaptcha.com";
// 请求超时时间,秒KgRequest.connectTimeout=5;
// 用户登录或尝试帐号,当安全策略中的防控等级为3时必须填写,一般情况下可以忽略// 可以填写用户输入的登录帐号(如:request.getParameter("username"),可拦截同一帐号多次尝试等行为KgRequest.userId="kgCaptchaDemo";
// request 对象,当安全策略中的防控等级为3时必须填写,一般情况下可以忽略KgRequest.request=request;
// java 环境中无法提供 request 对象,请分别定义:clientIp|clientBrowser|domain 参数,即:// KgRequest.clientIp = "127.0.0.1";  // 填写客户端IP// KgRequest.clientBrowser = "";  // 客户端浏览器信息// KgRequest.domain = "http://localhost";  // 你的授权域名或服务IP// 发送验证请求Map<String, String>requestResult=KgRequest.sendRequest();
if("0".toString().equals(requestResult.get("code"))) {
// 验签成功逻辑处理 ***// 这里做验证通过后的数据处理// 如登录/注册场景,这里通常查询数据库、校验密码、进行登录或注册等动作处理// 如短信场景,这里可以开始向用户发送短信等动作处理// ...html="<script>alert('验证通过');history.back();</script>";
            } else {
// 验签失败逻辑处理html="<script>alert(\""+requestResult.get("msg") +" - "+requestResult.get("code") +"\");history.back();</script>";
            }
response.getWriter().append(html);
        } else {
response.sendRedirect("index.html");
        }
    }
protectedvoiddoPost(HttpServletRequestrequest, HttpServletResponseresponse) throwsServletException, IOException {
doGet(request, response);
    }
}


结果截图

生成验证码并验证成功,成功登录,进入到个人信息页。

14.PNG

9.png


相关链接

官方地址:

https://www.kgcaptcha.com/

SDK下载:

https://github.com/KgCaptcha

效果演示:

https://www.kgcaptcha.com/demo/

相关文章
|
2月前
|
Java
java实现动态验证码源代码——绘制验证码的jsp
java实现动态验证码源代码——绘制验证码的jsp
14 0
|
2月前
|
前端开发 Java
java实现动态验证码源代码——jsp页面
java实现动态验证码源代码——jsp页面
14 0
|
2月前
|
Java 机器人 网络安全
Java代码快速生成验证码
Java代码快速生成验证码
43 0
|
4月前
|
前端开发 Java 数据库连接
JavaWeb:登录注册功能实现
JavaWeb 登录注册是一种常见的网站开发功能,使用 Java 编程语言和 Web 技术来实现用户注册和登录功能
35 3
|
2月前
|
JavaScript Java
java生成验证码并进行验证
java生成验证码并进行验证
29 2
|
4月前
|
前端开发 Java 数据库连接
【Java实战篇】SpringBoot+MyBatis快速实现登录注册
【1月更文挑战第19天】【Java实战篇】SpringBoot+MyBatis快速实现登录注册
|
4天前
|
前端开发 JavaScript Java
前端和Java验签以太坊钱包签名实现中心化登录
前端和Java验签以太坊钱包签名实现中心化登录
26 8
|
2月前
|
JSON 前端开发 Java
|
2月前
|
存储 Java 关系型数据库
Java注册与登录
Java注册与登录
11 0
|
2月前
|
Java 程序员 数据安全/隐私保护
【Java每日一题】——第十二题:完成百战程序员系统登录功能
【Java每日一题】——第十二题:完成百战程序员系统登录功能
32 0