当前位置: 首页 > 后端技术 > Java

推荐一个漂亮的Java图形验证码

时间:2023-04-02 00:51:58 Java

Java图形验证码,支持自定义图片、中文、算术等类型,可用于JavaWeb、JavaSE等项目。振祥效果展示项目集成包com.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;公共演示(){超级();}protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException{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="L001";appSecret="W68oJi0iqT2C3BFRGirO1IaYCDvsYEED";KgCaptchaSDKKgRequest=newKgCaptchaSDK(appId,appSecret);//前端验证成功后颁发的token,有效期为两分钟KgRequest.token=request.getParameter("kgCaptchaToken");//System.out.print(KgRequest.token);//填写应用服务的域名,在应用管理中获取KgRequest.appCdn="https://cdn9.kgcaptcha.com";//请求超时时间,秒KgRequest.连接超时=5;//用户登录或试用帐号,安全策略中防控级别为3时必须填写,一般情况下可以忽略。//可以填写用户输入的登录账号(eg:request.getParameter("username"),可以拦截同一账号的多次尝试KgRequest.userId="kgCaptchaDemo";//请求对象,必须是安全策略中防控级别为3时填写,一般情况下可以忽略KgRequest.request=request;//java环境下不能提供request对象,请单独定义:clientIp|clientBrowser|domain参数,即://KgRequest.clientIp=“127.0.0.1”;//填写客户端IP//KgRequest.clientBrowser="";//客户端浏览器信息//KgRequest.domain="http://localhost";//您授权的域名或服务IP//发送验证请求MaprequestResult=KgRequest.sendRequest();if("0".toString().equals(requestResult.get("code"))){//签名验证成功逻辑处理***//这里是验证通过后的数据处理//比如登录/注册场景,一般是查询数据库,验证密码,登录或注册等动作处理//比如短信场景,这里可以开始给用户发短信等动作处理//...html="";}else{//验签失败逻辑处理html="";}response.getWriter().append(html);}else{response.sendRedirect("index.html");}}protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{doGet(request,response);}设置界面最终SDK开源地址:https://github.com/KgCaptcha,顺便做了一个demo:https://www.kgcaptcha.com/demo/

最新推荐
猜你喜欢