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

沙田仿做网站中国2022年重大新闻

沙田仿做网站,中国2022年重大新闻,wordpress主题 单页,wordpress短代码开发目录 1、开启邮箱IMAP/SMTP服务,获取授权码 2、相关代码 1、使用配置Redis(用于存储验证码,具有时效性) 2、邮箱依赖和hutool(用于随机生成验证码) 3、配置Redis和邮箱信息 4、开启Redis服务 5、编写发送…

目录

1、开启邮箱IMAP/SMTP服务,获取授权码

2、相关代码

        1、使用配置Redis(用于存储验证码,具有时效性)

        2、邮箱依赖和hutool(用于随机生成验证码)

        3、配置Redis和邮箱信息

        4、开启Redis服务

        5、编写发送邮箱验证码

        6、邮箱登录验证功能

3、测试


1、开启邮箱IMAP/SMTP服务,获取授权码

        1、登录邮箱(以qq邮箱为例),点击邮箱右上角邮箱-设置-常规-第三方服务,会有如下选项

        2、点击生成授权码(这边已经开启IMAP/SMTP服务,未开启的要先设置为开启),之后根据指示可以拿到一串由邮箱服务器提供的专属于自己的授权码,用于在Java代码中连接邮箱

2、相关代码

        1、使用配置Redis(用于存储验证码,具有时效性)
        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>
        2、邮箱依赖和hutool(用于随机生成验证码)
        <!-- 邮箱验证码依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency><!-- 一个很强大的工具库 --><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.19</version></dependency>
        3、配置Redis和邮箱信息
  redis:host: localhostport: 6379mail:host: smtp.qq.comprotocol: smtpdefault-encoding: UTF-8username: 【这里填发件人邮箱,可以是你自己的】password: 【这里填刚刚从邮箱网站中拿到的授权码,注意不是自己的邮箱密码!!】nickname: 【发件人自命名】properties:mail.smtp.auth: true #启用SMTP服务器的身份验证,这是为了确保只有合法用户可以发送邮件。mail.smtp.starttls.enable: #启用TLS加密,这是为了确保邮件传输的安全性。mail.smtp.starttls.required: true #要求使用TLS加密,如果连接不是通过TLS加密传输,则连接将失败。
        4、开启Redis服务

        这里以windows作为举例:

        5、编写发送邮箱验证码
import cn.hutool.core.util.RandomUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import java.util.concurrent.TimeUnit;@RestController
@RequestMapping("/email")
public class EmailController {@Autowiredprivate JavaMailSender javaMailSender;@Autowiredprivate RedisTemplate redisTemplate;@Value("${spring.mail.username}")private String sender;@Value("${spring.mail.nickname}")private String nickname;@GetMapping("/code")public String getCode(@RequestParam("email") String email){// 创建一个邮件SimpleMailMessage message = new SimpleMailMessage();// 设置发件人message.setFrom(nickname+'<'+sender+'>');// 设置收件人message.setTo(email);// 设置邮件主题message.setSubject("欢迎访问"+nickname);//生成六位随机数String code = RandomUtil.randomNumbers(6);//将验证码存入redis,有效期为5分钟redisTemplate.opsForValue().set("email_code_"+email, code, 300000, TimeUnit.MILLISECONDS);String content = "【验证码】您的验证码为:" + code + " 。 验证码五分钟内有效,逾期作废。\n\n\n" +"------------------------------\n\n\n" ;message.setText(content);// 发送邮件javaMailSender.send(message);return "发送成功";}}
        6、邮箱登录验证功能
@RestController
@RequestMapping("/user")
public class UserController {@Resourceprivate RedisTemplate redisTemplate;// 通过邮箱验证登录@PostMapping("/loginByEmail")public ResponseBean loginByEmail(@RequestParam(value = "code") String code) {String email = "【这里写你已经收到验证码的邮箱】";String emailKey  = "email_code_"+email;String storedToken = (String) redisTemplate.opsForValue().get(emailKey);if(code.equals(storedToken)){return ResponseBean.success("验证成功",null);}else {return ResponseBean.error("验证失败");}}}

3、测试

                                                 成功接收到来自发送方的验证码

再进行邮箱登录测试

    

        检查Redis服务器存储情况:

http://www.hkea.cn/news/618935/

相关文章:

  • 网站建设公司创意网站网络推广推广
  • 浙江三建建设集团有限公司网站关键词的作用
  • 网站建设官方网站教育培训机构加盟十大排名
  • 万网上传网站seo免费
  • 孝感做网站公司百度热议排名软件
  • 建设网站费用吗廊坊seo快速排名
  • 网站建设公司怎样拓展网站业务大连网站推广
  • 什么网站可以免费做找客户东莞seo建站推广费用
  • 合肥微信网站建设购物网站如何推广
  • 网站建设课程简介图片百度官网认证免费
  • 月夜影视在线观看免费完整版韩剧关键词排名优化报价
  • 做网站的工作时间兰州seo公司
  • css怎么嵌入到html直通车关键词优化口诀
  • 虚拟网站php专业型seo网站关键词排名提升
  • 找人合伙做网站平台b2b电商平台
  • 手机网站建设技术方案找网站设计公司
  • 杭州如何设计公司网站惠州seo网站推广
  • 成都网站建设门户大连企业网站建站模板
  • 游戏卡充值可以做网站吗百度竞价关键词出价技巧
  • 建设企业网站就等于开展网络营销网店推广实训报告
  • dede无法更新网站主页到百度联盟注册
  • wordpress支持爱奇艺企业网站seo托管怎么做
  • 永川做网站的武汉百度快速排名提升
  • 做网站的故意给中病毒网络营销广告
  • 关于阅读类网站的建设规划书友情链接系统
  • 专业做幼儿园设计的网站百度小程序关键词优化
  • 腾龙时时彩做号网站整站优化关键词排名
  • 正规的网站制作与推广百度广告运营
  • 网站建设估价引擎搜索有哪些
  • 东莞网站建设选菲凡网络如何制作网站