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

网站建设有啥费用用python 做网站

网站建设有啥费用,用python 做网站,做物流的网站有哪些,襄樊seo快速排名该文章用于记录怎么进行邮箱验证码开发。 总所周知#xff0c;我们在某些网站进行注册的适合总是会遇到什么填写邮箱#xff0c;邮箱接收验证码#xff0c;验证通过后才可以继续注册#xff0c;那么这个功能是怎么实现的呢#xff1f; 一#xff0c;准备工作 1.1 邮箱…该文章用于记录怎么进行邮箱验证码开发。 总所周知我们在某些网站进行注册的适合总是会遇到什么填写邮箱邮箱接收验证码验证通过后才可以继续注册那么这个功能是怎么实现的呢 一准备工作 1.1 邮箱设置 要进行邮箱验证码验证首先我们得要有一个邮箱。同时我们要在邮箱里面打开对应服务我以QQ邮箱为例 先点击设置 在设置中点击账号 往下滑在这里点击开启服务 然后就是按指示进行操作最后就好了可以得到授权码 1.2 后端环境配置 至于数据库什么的配置那就不详细赘述了你的后端里面要有redis这很关键。 在对应模块的pom.xml文件里导入如下依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-mail/artifactId/dependency然后到application.yml配置文件中进行配置 spring:mail:# 发送者邮箱username: 你的邮箱#申请到的授权码password: 你的授权码# 配置 SMTP 服务器地址host: smtp.qq.com# 端口号465或587port: 465protocol: smtps# 默认的邮件编码为UTF-8default-encoding: UTF-8# 配置SSL 加密工厂properties:mail:smtp:socketFactoryClass: javax.net.ssl.SSLSocketFactory#表示开启 DEBUG 模式这样邮件发送过程的日志会在控制台打印出来方便排查错误debug: truessl: true二代码实现步骤 2.1 随机验证码生成工具 CodeGeneratorUtil.java: import java.util.UUID;/*** author Administrator* date 2024/7/13 15:47* description CodeGeneratorUtil*/ public class CodeGeneratorUtil {/*** 生成指定长度的验证码* param length 长度* return*/public static String generateCode(int length){return UUID.randomUUID().toString().substring(0, length);}} 2.2 验证码发送工具 MailMsg.java: import lombok.Value; import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate; import org.springframework.mail.javamail.JavaMailSenderImpl; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.stereotype.Component;import javax.annotation.Resource; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; import java.time.Duration;/*** author Administrator* date 2024/7/13 15:36* description MailMsg*/ Component public class MailMsg {Resourceprivate JavaMailSenderImpl mailSender;Autowiredprivate RedisTemplateString,String redisTemplate;public boolean mail(String email) throws MessagingException {MimeMessage mimeMessage mailSender.createMimeMessage();//生成随机验证码String code CodeGeneratorUtil.generateCode(6);MimeMessageHelper helper new MimeMessageHelper(mimeMessage, true);//设置一个html邮件信息helper.setText(p stylecolor: blue你的验证码为\n code \n(有效期为五分钟)/p, true);//设置邮件主题名helper.setSubject(验证码);//发给谁-》邮箱地址helper.setTo(email);//谁发的-》发送人邮箱helper.setFrom(你的邮箱);//将邮箱验证码以邮件地址为key存入redis,5分钟过期redisTemplate.opsForValue().set(email, code, Duration.ofMinutes(5));mailSender.send(mimeMessage);return true;} } 这里就不得不提到redis的优点–过期删除策略了。在redis中我们可以给一个字段设置过期时间到时间就会自动删除字段这个用来存验证码就太合适不过了。 大概是这样设置 redisTemplate.opsForValue().set(key,value,time) 第一个参数是键第二个参数是值第三个参数是时间。 2.3 验证码发送接口 在你的某个controller里面写这个就行了。 ApiOperation(value 发送邮箱验证码)GetMapping(value /sendEmail/{email})public ResultObject sendCode(PathVariable String email) throws MessagingException {log.info(邮箱码{},email);//从redis中取出验证码信息String code redisTemplate.opsForValue().get(email);if (!StringUtils.isEmpty(code)) {return Result.error(email : code 已存在还未过期);}boolean b mailMsg.mail(email);if (b) {return Result.success( 验证码已发送至邮箱请注意查收);}return Result.error(邮箱不正确或为空);}2.4 注册功能 这里就属于是抛砖引玉大伙们还有什么更好的想法和扩展呢 PostMapping(/register)ApiOperation(注册接口)public Result register(RequestBody RegisterDTO registerDTO){log.info(用户注册{}, registerDTO);String code registerDTO.getCode();log.info(前端输入的验证码{}, code);String eml registerDTO.getEmail();log.info(前端的对象为{}邮箱》{},registerDTO,eml);String s redisTemplate.opsForValue().get(eml);log.info(从redis中获取code-{},s);if (Objects.equals(s, code)) {log.info(验证码正确{}, code);userService.register(registerDTO);return Result.success(MessageConstant.Register_SUCCESS);}else{return Result.error(验证码错误);}}验证码功能大概就是这样了。
http://www.dnsts.com.cn/news/179319.html

相关文章:

  • 网站建设的基础服务九江做网站开发需要多少钱
  • 缙云县建设局网站阜宁网站制作具体报价
  • 电子商务网站建设摘要旅游首页设计培训班
  • 网站空间租用有哪些服务柳州网站建设柳州
  • 如何用文档做网站wordpress网站备案
  • 头像在线制作网站浙江企业响应式网站建设
  • 建设网店网站小俊哥网站建设
  • 建设银行网站建设情况焦作seo推广
  • 建网站优势济南网站推广¥做下拉去118cr
  • 泰安如何选择网站建设申请域名后如何发布网站
  • 公司网站开发 中山网络营销作业策划方案
  • 微网站html5模板国外网站 模板
  • 罗湖商城网站建设哪家便宜seo快速排名源码
  • 企业网站设计服务公司网站管理系统
  • 查询单位信息的网站网站模板html
  • 成都做网站设计公司价格温州市建设工程信息网
  • 久久建筑网站内搜索新建网站如何做关键词
  • 网站策划书预期风险运维工程师主要做什么
  • 天津专业网站建设全市网站建设情况摸底调查
  • 建设银行官网站下载夏天做哪个网站致富
  • 有名的网站制扬州百度seo公司
  • win7下如何建设网站wordpress卡密激活码自动发放
  • 赣州网站建设价格互联网网站 有哪些
  • 一个域名建多个网站wordpress api key
  • 服装商城网站源码河南住房和城乡建设厅门户网站
  • 网站后台文章删了 怎么前台还有网站开发兼职网站
  • 厦门电子商务网站建设二级域名网站免费申请
  • 搜狗网站入口wordpress问答悬赏功能
  • 永川网站建设精品课程网站
  • 企业建站公司江苏专业做网站的公司哪家好