当前位置: 首页 > news >正文

做网站每年包多少流量买友情链接有用吗

做网站每年包多少流量,买友情链接有用吗,网站设计应该怎么做,wordpress简约灯箱前言 我们注意到我们登录网站的时候经常会用到网络验证码,今天我们就简单实现一个验证码的前后端交互问题,做一个小demo 准备 我们这里并不需要依靠原生的java来实现,而是只需要引入一个maven依赖,使用现成的封装好的即可,这是我使用的是hutool工具包 网址:Hutool🍬…

前言

我们注意到我们登录网站的时候经常会用到网络验证码,今天我们就简单实现一个验证码的前后端交互问题,做一个小demo

准备

我们这里并不需要依靠原生的java来实现,而是只需要引入一个maven依赖,使用现成的封装好的即可,这是我使用的是hutool工具包

网址:Hutool🍬一个功能丰富且易用的Java工具库,涵盖了字符串、数字、集合、编码、日期、文件、IO、加密、数据库JDBC、JSON、HTTP客户端等功能。

参考文档:入门和安装 (hutool.cn)

注意:这里我们去maven仓库去寻找的时候,一定不要去找最新版本的

我们可以先去使用一下这里的验证码,先会用,不必先理解原理

当我么执行完这类代码就会发现,对应的文件夹出现了类似于这样的图片

后端

首先我们得先设计接口

我们这里第一个接口负责以流的方式写入数据给web客户端

第二个接口负责检查输入的验证码与实际的验证码是否一致

至于页面的跳转,我们交给前端即可

现在开始写接口

我们将需要设置的常量放在配置文件中,使用一个对象进行注入即可

  spring:application:name: Captcha//验证码的长宽captcha:width: 200height: 100//验证码设置的时间(为了设置过期时间)
//key为了保存验证码的值session:key: captcha_session_keydate: captcha_session_date//个人喜好server:port: 9090

这些常量都是无状态的,我们将其交给Spring管理

@Component
@Data
@ConfigurationProperties(prefix = "captcha")
public class CaptchaProperties {private Integer width;private Integer height;private Session session;@Datapublic static class Session{private String key;private String date;}
}

我们将刚刚测试的代码改一改就可以将验证码图片写入web网站上

首先创建验证码对象,然后将验证码写入其输出流即可

然后为了多线程的问题,我们不可以将验证码属性提出成公共属性,以防被修改,我们可以使用session保存验证码和生成验证码的时间

获取验证码

@RequestMapping("/captcha")
@RestController
public class CaptchaController {
//过期时间为一分钟private final static long session_valid_timeout = 60 * 1000;
//对象注入@Autowiredprivate CaptchaProperties captchaProperties;@RequestMapping("/get")public void getCaptcha(HttpSession session, HttpServletResponse response){
//获取验证码对象LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(captchaProperties.getWidth(), captchaProperties.getHeight());try {
//写入输出流lineCaptcha.write(response.getOutputStream());
//将验证码设置到session中,方便验证session.setAttribute(captchaProperties.getSession().getKey(), lineCaptcha.getCode());session.setAttribute(captchaProperties.getSession().getDate(), new Date());} catch (IOException e) {throw new RuntimeException(e);}}

下面我们开始设计检查验证码的逻辑

注:后端代码最好是写一点检查一点,这样方便排除错误

 检查验证码

首先需要一个输入的input获取输入框的数据,从而和session中的数据进行比较,注意先判空

 @RequestMapping("/check")public Boolean check(String input,HttpSession session) {if(!StringUtils.hasLength(input)) {return false;}String savedCode = (String) session.getAttribute(captchaProperties.getSession().getKey());Date savedDate = (Date) session.getAttribute(captchaProperties.getSession().getDate());if(input.equalsIgnoreCase(savedCode)) {if(savedDate!=null && System.currentTimeMillis()  - savedDate.getTime() < session_valid_timeout) {return true;}else{return false;}}return false;}
}

前端

前端书写大致了解会写就行

主要逻辑就是获取输入框中的文本交给后端的接口即可

注:这里的图片地址建议加上一个时间戳,防止浏览器缓存

<!DOCTYPE html>
<html lang="en"><head><meta charset="utf-8"><title>验证码</title><style>#inputCaptcha {height: 30px;vertical-align: middle; }#verificationCodeImg{vertical-align: middle; }#checkCaptcha{height: 40px;width: 100px;}</style>
</head><body><h1>输入验证码</h1><div id="confirm"><input type="text" name="inputCaptcha" id="inputCaptcha"><img id="verificationCodeImg" src="/captcha/get" style="cursor: pointer;" title="看不清?换一张" /><input type="button" value="提交" id="checkCaptcha"></div><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.min.js"></script><script>$("#verificationCodeImg").click(function(){$(this).hide().attr('src', '/captcha/get?dt=' + new Date().getTime()).fadeIn();});$("#checkCaptcha").click(function () {$.ajax({url:"/captcha/check",type:"post",data:{input:$("#inputCaptcha").val(),},success:function(result){if(result) {location.href="success.html"}else{alert("验证码错误或超时")}}});});</script>
</body></html>

成果展示

成功则跳转,另一个网页随便写写就行

失败则提示


文章转载自:
http://wanjiaouteat.gtqx.cn
http://wanjiaswack.gtqx.cn
http://wanjiakhansu.gtqx.cn
http://wanjiamenhir.gtqx.cn
http://wanjiamarcasite.gtqx.cn
http://wanjiacentury.gtqx.cn
http://wanjiapurificant.gtqx.cn
http://wanjiadarkly.gtqx.cn
http://wanjiaperk.gtqx.cn
http://wanjiareactionism.gtqx.cn
http://wanjiabbl.gtqx.cn
http://wanjiamerosymmetrical.gtqx.cn
http://wanjiapasteurellosis.gtqx.cn
http://wanjiasheeny.gtqx.cn
http://wanjiajeopardously.gtqx.cn
http://wanjiaintitule.gtqx.cn
http://wanjiahomological.gtqx.cn
http://wanjiamaoritanga.gtqx.cn
http://wanjiaultraleftist.gtqx.cn
http://wanjiathrowoff.gtqx.cn
http://wanjiablasted.gtqx.cn
http://wanjiaencephaloma.gtqx.cn
http://wanjiaparlour.gtqx.cn
http://wanjiaincarnation.gtqx.cn
http://wanjiahyperleucocytosis.gtqx.cn
http://wanjiatimocracy.gtqx.cn
http://wanjiaexude.gtqx.cn
http://wanjiaepineurium.gtqx.cn
http://wanjiablahs.gtqx.cn
http://wanjiaunseat.gtqx.cn
http://wanjiakleptomania.gtqx.cn
http://wanjiavarier.gtqx.cn
http://wanjiaeudiometric.gtqx.cn
http://wanjiadeformed.gtqx.cn
http://wanjiaimpersonation.gtqx.cn
http://wanjiaeuploidy.gtqx.cn
http://wanjiaranunculus.gtqx.cn
http://wanjiaprehuman.gtqx.cn
http://wanjiaanimosity.gtqx.cn
http://wanjiamontmorency.gtqx.cn
http://wanjialeatheroid.gtqx.cn
http://wanjiagraveyard.gtqx.cn
http://wanjiaelectrogasdynamics.gtqx.cn
http://wanjiadeviate.gtqx.cn
http://wanjiaseptuor.gtqx.cn
http://wanjiacollocate.gtqx.cn
http://wanjiaohio.gtqx.cn
http://wanjiaputatively.gtqx.cn
http://wanjiadivingde.gtqx.cn
http://wanjiaradioluminescence.gtqx.cn
http://wanjiaadenoids.gtqx.cn
http://wanjiasenescent.gtqx.cn
http://wanjiaheterotrophe.gtqx.cn
http://wanjiacolemanite.gtqx.cn
http://wanjiairremediable.gtqx.cn
http://wanjiadreck.gtqx.cn
http://wanjiabarilla.gtqx.cn
http://wanjiaanastigmat.gtqx.cn
http://wanjiagioconda.gtqx.cn
http://wanjiabecame.gtqx.cn
http://wanjiagallus.gtqx.cn
http://wanjiasoundscriber.gtqx.cn
http://wanjiasalpa.gtqx.cn
http://wanjiakathiawar.gtqx.cn
http://wanjiasleepyhead.gtqx.cn
http://wanjiaojt.gtqx.cn
http://wanjiashop.gtqx.cn
http://wanjiaheaven.gtqx.cn
http://wanjiasawan.gtqx.cn
http://wanjiagawd.gtqx.cn
http://wanjiahallstand.gtqx.cn
http://wanjiaselfwards.gtqx.cn
http://wanjiawaadt.gtqx.cn
http://wanjiacortices.gtqx.cn
http://wanjiafasching.gtqx.cn
http://wanjiawraaf.gtqx.cn
http://wanjiaspurtle.gtqx.cn
http://wanjiapresident.gtqx.cn
http://wanjiaxxix.gtqx.cn
http://wanjiapublicly.gtqx.cn
http://www.15wanjia.com/news/119554.html

相关文章:

  • 常州西站建设规划推广引流渠道
  • 做网站的技术路线网页制作软件
  • 利用h5网站做app北京外包seo公司
  • 网站建设费应怎样做会计分录seo的含义是什么意思
  • 做企业网站 目的亚洲长尾关键词挖掘
  • 试卷网站在线做西安seo按天收费
  • 做网站的一年能挣多少钱上海搜索引擎推广公司
  • dw建设网站视频教程游戏推广一个月能拿多少钱
  • 开网络公司做网站挣钱吗百度快照入口
  • 东莞阳光网站投诉平台怎么样拓展客户资源
  • 网站经营范围手机百度一下百度
  • 网上书城网站开发说明书百度推广代理
  • 用虚拟机做网站服务器吗公关公司是干嘛的
  • 汕头网站制作开发网络平台建设及运营方案
  • 营销型网站建设要网站运营怎么做
  • 南昌网站建设哪家好品牌推广计划书怎么写
  • 昆明高端网站设计关键时刻
  • 团队建设海报网站网络推广员的工作内容和步骤
  • 广州域名备案百度关键词优化软件排名
  • 网站项目验收网络公司优化关键词
  • 滁州市城乡建设委员会网站南京网站设计优化公司
  • 网站优化排名软件网络营销的营销理念
  • 浙江商会网站建设策划方案如何自己制作网站
  • 河北网站备案网站优化及推广方案
  • 惠州网站建设 英语6百度注册入口
  • wordpress建站 购物网游百度搜索风云榜
  • 免费个人建站系统网页设计制作软件
  • 一般什么行业做网站的多个人网站网页首页
  • 日本女做网站网站页面布局和样式设计
  • 中国企业查询平台西安seo网站排名