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/

相关文章
|
4月前
|
存储 NoSQL 数据库
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
这篇文章讲述了在分布式微服务系统中添加用户注册和登录功能的过程,重点介绍了用户注册时通过远程服务调用第三方服务获取短信验证码、使用Redis进行验证码校验、对密码进行MD5加密后存储到数据库,以及用户登录时的远程服务调用和密码匹配校验的实现细节。
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
|
1月前
|
小程序 前端开发 算法
|
2月前
|
Java
Java 登录输入的验证码
Java 登录输入的验证码
32 1
|
2月前
|
C#
C# 图形验证码实现登录校验代码
C# 图形验证码实现登录校验代码
89 2
|
3月前
|
存储 JSON 前端开发
node使用token来实现前端验证码和登录功能详细流程[供参考]=‘很值得‘
本文介绍了在Node.js中使用token实现前端验证码和登录功能的详细流程,包括生成验证码、账号密码验证以及token验证和过期处理。
57 0
node使用token来实现前端验证码和登录功能详细流程[供参考]=‘很值得‘
|
4月前
|
资源调度 JavaScript API
nest.js + sms 实现短信验证码登录
本文介绍了在Nest.js框架中集成短信验证码登录的实现方案,详细阐述了使用阿里云短信服务的配置流程、资质申请、短信模板设置,并提供了API调用示例和工程代码的运行步骤。
nest.js + sms 实现短信验证码登录
|
4月前
|
存储 算法 Java
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。
这篇文章详细介绍了在Java项目中如何使用MD5算法对用户密码进行加密存储和登录验证,包括加入依赖、编写MD5工具类、注册时的密码加密和登录时的密码验证等步骤,并通过示例代码和数据库存储信息展示了测试效果。
在Java中使用MD5对用户输入密码进行加密存储、同时登录验证。
|
4月前
|
SQL Java 数据库连接
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
|
4月前
【Azure 环境】中国区Azure B2C 是否支持手机验证码登录呢?
【Azure 环境】中国区Azure B2C 是否支持手机验证码登录呢?
|
6月前
|
Java 数据安全/隐私保护
利用Java图形化界面组件Swing写一个简易的登录界面
利用Java图形化界面组件Swing写一个简易的登录界面
88 1