Redis模仿手机验证码发送的实现示例

目录
  • 流程图
  • 一:添加jedis依赖包
  • 二:测试连接Redis服务是否成功
  • 三:编写生成验证码方法
  • 四:编写发送验证码方法
  • 五:编写校验验证码方法

本文主要介绍了Redis模仿手机验证码发送的实现示例,分享给大家,具体如下:

流程图

一:添加jedis依赖包

二:测试连接Redis服务是否成功

// 创建Jedis对象用于连接Redis服务(在服务器上通过redis-server需要指定配置文件:redis-server /etc/redis.conf)
Jedis jedis = new Jedis("192.168.119.128", 6379);
String value = jedis.ping();
System.out.println(value);
jedis.close();

三:编写生成验证码方法

/**
     * 生成验证码的方法
     * @return code
     */
    public static String getCode() {
        Random random = new Random();
        String code = "";
        for (int i = 0; i < 6; i++) {
            int num = random.nextInt(10);
            code += num;
        }
        System.out.println(code);
        return code;
    }

四:编写发送验证码方法

/**
     * 用户点击生成验证码并将其添加到redis中
     * @param phone
     */
    public static void sendVerifyCode(String phone) {
        Jedis jedis = new Jedis("192.168.119.128", 6379);

        // 手机号码的key,获取手机号码发送验证码次数
        String countKey = "VerifyCode" + phone + ":count";
        // 验证码的key,获取手机号码的验证码
        String codeKey = "VerifyCode" + phone + ":code";

        // 获取countKey判断当前手机号码是否可以发送验证码
        String count = jedis.get(countKey);
        if (count == null) {
            jedis.setex(countKey, 24 * 60 * 60, "1");
        } else if (Integer.parseInt(count) <= 2) {
            jedis.incr(countKey);
        } else if (Integer.parseInt(count) > 2) {
            System.out.println("当前手机号发送验证码次数超过上限,请明天再发送验证码");
            jedis.close();
        }

        String code = getCode();
        jedis.setex(codeKey, 120, code);

        jedis.close();
    }

五:编写校验验证码方法

/**
     * 用户输入手机号以及验证码进行校验
     * @param phone
     * @param code
     */
    public static void CustomerVerifyCode(String phone, String code) {
        Jedis jedis = new Jedis("192.168.119.128", 6379);

        String codeKey = "VerifyCode" + phone + ":code";
        String phoneVerifyCode = jedis.get(codeKey);

        if (phoneVerifyCode.equals(code)) {
            System.out.println("校验成功!");
        } else {
            System.out.println("校验失败!");
        }

        jedis.close();
    }

到此这篇关于Redis模仿手机验证码发送的实现示例的文章就介绍到这了,更多相关Redis模仿手机验证码发送内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Redis模仿发送手机验证码功能

    流程图 一:添加jedis依赖包 二:测试连接Redis服务是否成功 // 创建Jedis对象用于连接Redis服务(在服务器上通过redis-server需要指定配置文件:redis-server /etc/redis.conf) Jedis jedis = new Jedis("192.168.119.128", 6379); String value = jedis.ping(); System.out.println(value); jedis.close(); 三:编写生成验

  • 如何使用Java redis实现发送手机验证码功能

    要求: 1.输入手机号,点击发送后随机生成6位数字码,2分钟有效 2.输入验证码,点击验证,返回成功或失败 3.每个手机号每天只能输入3次 代码如下 import redis.clients.jedis.Jedis; import java.util.Random; public class ValidationTest { public static void main(String[] args) { //getValidation("15005076571"); //checkV

  • Redis模仿手机验证码发送的实现示例

    目录 流程图 一:添加jedis依赖包 二:测试连接Redis服务是否成功 三:编写生成验证码方法 四:编写发送验证码方法 五:编写校验验证码方法 本文主要介绍了Redis模仿手机验证码发送的实现示例,分享给大家,具体如下: 流程图 一:添加jedis依赖包 二:测试连接Redis服务是否成功 // 创建Jedis对象用于连接Redis服务(在服务器上通过redis-server需要指定配置文件:redis-server /etc/redis.conf) Jedis jedis = new Je

  • Jedis操作Redis实现模拟验证码发送功能

    目录 jedis的创建 1.先启动redis 如果报 2.创建一个maven工程 3.创建一个class jedis实现模拟验证码 相关数据类型测试 Key String List set hash zset jedis的创建 1.先启动redis 如果报 那么说明你redis服务器服务器端还没打开 //启动服务端 redis-server /etc/redis.conf //启动客户端 redis-cli 如果启动成功,就是这样 2.创建一个maven工程 导入Jedis依赖 <depende

  • Redis实现验证码发送并限制每日发送次数的示例代码

    目录 1.功能 2.分析 3.实现 1.功能 输入手机号,点击发送后随机生成六位数字码,2分钟有效 输入验证码,点击验证,返回成功或失败 每个手机号每天只能输3次 2.分析 每个手机每天只能输3次:incr每次发送之后+1,当值为3时提示不能发送,过期时间为当天结束 随机生成6位数字验证码:RandomUtil(hutool) 验证码2分钟有效:放入redis里并设置过期时间2分钟 判断验证码是否一致:从redis里获取验证码和输入的验证码进行比对 3.实现 package cn.ken.blo

  • redis 手机验证码实现示例

    本文主要介绍了redis 手机验证码实现示例,分享给大家,具体如下: /** * @author gh Email:@2495140780qq.com * @Description * @date 2021-11-10-21:12 */ public class PhoneCode { public static void main(String[] args) { //模拟验证码发送 // verifyCode("13796734562"); //效验 getRedisCode(&q

  • django 发送手机验证码的示例代码

    一.流程分析: 1.用户在项目前端,输入手机号,然后点击[获取验证码],将手机号发到post到后台. 2.后台验证手机号是否合法,是否已被占用,如果通过验证,则生成验证码,并通过运行脚本,让短信运营商向该手机号,发送该验证码,如果没通过验证,则返回错误信息 3.用户收到短信验证码以后,再次将所有信息post到后台. 4.后台验证各个数据,通过验证则完成实名制认证,如果没通过则返回错误信息. 总结,一次实名验证,需要两次ajax+post 二.对接短信商: 1.在云片网端: 1.注册云片网 地址:

  • Vue简易注册页面+发送验证码功能的实现示例

    目录 1. 效果展示 2. 增强版验证码及邮件推送管理(见以后的博客) 3. 大致思路 4. 前期准备 5. 前端代码 6. 后端 1. 效果展示 2. 增强版验证码及邮件推送管理(见以后的博客) 3. 大致思路 用户角度分析一下注册时候的步骤: 填写自己的邮箱号 点击"发送验证码"按钮 邮箱中收到验证码 填写其余注册信息并填写验证码 注册成功! 系统设计者角度分析一下步骤: 系统随机生成六位数 根据用户提供的邮箱号将验证码发送到其邮箱 根据用户提供的信息,进行验证码的校验 如果校验成

  • 基于Redis验证码发送及校验方案实现

    在我们的业务中,经常存在需要通过发送验证码.校验验证码来完成的一些业务逻辑,比如账号注册.找回密码.用户身份确认等. 在该类业务中,发送验证码的方式可以有各种各样,比如最常见的手机验证,最古老的邮箱验证,到现在相对少见的微信公众号.钉钉通知等:而验证码服务端存储的方式也可以各式各样,比如存储在关系型数据库中,当然也可以如本文标题所示,存储在Redis中. 既然已经预见到了各式各样的发送方式,也预见到了各式各样的存储方式,所以,虽然本文标题是基于Redis,但Redis其实只是其中的一种存储方式,

  • 手机注册发送验证码倒计时的简单实例

    如下所示: ()这里用的是input做的点击发送验证码 <input type="number" class="input" name="mobile" placeholder="手机号" style="border: none" <input class="hui_kuang"style="width: 30%;text-align: center;height:

  • 使用阿里大于(大鱼)平台进行发送手机验证码的流程

    昨天看了一篇博文利用阿里云大于平台给手机发送验证码和短信,当时自己就很感兴趣,因为这个技术很有用,相当于以后做用户注册的功能可以进行短信验证,并且大于平台的短信收费也很低,我自己都没有花钱.现在来分享一下我昨天做的流程吧 首先去登录阿里大于: http://www.alidayu.com/ 没有号的就注册一个!用淘宝就可以登录了,相信一般人都是不需要注册的,还可以用支付宝,微博账号登陆,我用的是支付宝扫码登录.在登录成功之后显示下图界面. 点击页面的控制台,然后会跳到另一个页面,然后你会看大使用

随机推荐