/*** 用户注册发送短信*/@PostMapping("/sendMassage")@ApiOperationSupport(order = 12)@ApiOperation(value = "用户注册发送短信", notes = "传入electricMassage")//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)public R sendMassage(String phone) throws IOException {Boolean flag = false;HttpClient client = new HttpClient();PostMethod post = new PostMethod("http://xxxxxxxx:8080/xxxx.do");post.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=gbk");//在头文件中设置转码String verifyCode = String.valueOf(new Random().nextInt(899999) + 100000);NameValuePair[] data = {new NameValuePair("corp_id", "xxx"),new NameValuePair("corp_pwd", "xxx"),new NameValuePair("corp_service", "1069106967491"),new NameValuePair("mobile", phone),new NameValuePair("msg_content", "尊敬的用户,您好,您的验证码为:"+ verifyCode + ",验证码失效时间为5分钟,若非本人操作,请忽略此短信。"),new NameValuePair("corp_msg_id", ""),new NameValuePair("ext", "")};post.setRequestBody(data);client.executeMethod(post);Header[] headers = post.getResponseHeaders();for (Header h : headers) {System.out.println(h.toString());}int statusCode = post.getStatusCode();if (statusCode == 200) {flag = saveCaptcha(verifyCode, phone);if (flag) {String result = new String(post.getResponseBodyAsString());System.out.println(result);post.releaseConnection();}}return flag ? R.success(SEND_SUCCESS) : R.fail(SEND_FAIL);}/*** 用户注册接口** @param user   用户信息* @return*/@PostMapping("/regist")@ApiOperationSupport(order = 12)@ApiOperation(value = "用户注册接口", notes = "传入code")//@PreAuth(RoleConstant.HAS_ROLE_ADMIN)public R regist(@Valid @RequestBody User user) {boolean validate = checkCaptcha(user.getCaptcha(), user.getPhone());Boolean index = false;if (validate) {CacheUtil.clear(USER_CACHE);index = userService.submit(user);}return R.status(index);}//讲注册用的验证码存入到redispublic Boolean saveCaptcha(String captcha, String phone) {try {//将验证码存储在redis中,并且设置过期时间5分钟redisTemplate.boundValueOps(phone).set(captcha, 300, TimeUnit.SECONDS);return true;} catch (Exception ex) {throw new RuntimeException(ex);}}//验证短信验证码public Boolean checkCaptcha(String captcha, String phone) {try {if (captcha.equals(redisTemplate.boundValueOps(phone).get())) {return true;} else {return false;}} catch (Exception ex) {throw new RuntimeException(ex);}}

JAVA采用手机号获取短信验证进行登录与注册相关推荐

  1. java实现阿里云短信验证注册--详细教程

    java实现阿里云短信验证注册–详细教程 .项目中先引入依赖 <!--阿里云短信包--><dependency><groupId>com.aliyun</gr ...

  2. JAVA对接阿里大于短信验证

    本文介绍的是JAVA的阿里大于短信验证对接,网上好多版本都是旧版本,我自己写完之后觉得应该更新一下,现在记录一下,怕以后忘记,申请步骤忽略 首先,去阿里大于下载SDK 第一步,就是安装阿里大于的SDK ...

  3. java向手机号发送短信验证码

    需要下载这三个jar包 commons-logging-1.1.1.jar commons-httpclient-3.1.jar commons-codec-1.4.jar 点击sms注册才可以用短信 ...

  4. python实现手机号获取短信验证码 | 对接打码平台

    前言 本篇文章主要讲了如何利用python自动注册网站(自动识别验证码) ID在用户中心最下面的软件ID里获取 识别类型在"价格体系"中查看 首先需要花1块钱到超级鹰打码平台上买点 ...

  5. java集成阿里云短信,实现登录功能

    1.申请阿里云账号,获取签名模板和key和id 具体代码实现 package com.ezeyc.edpbfqz.api.controller;import com.ezeyc.edpbase.uti ...

  6. Java使用网易云信短信验证 demo(完整教程)

    大概流程: 用户输入账号点击获取验证码,验证是否绑定手机号码,绑定则发送验证码 用户输入验证码,调用接口验证是否正确返回响应 首先我们需要在网易云信注册账号,获取得到App Key和App Secre ...

  7. java短信验证码实现_社交APP开发短信验证是通过什么技术实现

    我们已经习惯通过手机APP来解决我们生活中的一些问题,社交APP用来聊天交友,购物APP用来购买生活所需用品,游戏APP用来消遣娱乐,移动互联网行业正在飞速发展. 不难发现我们手机里面的各种APP都有 ...

  8. android+自定义发彩信,Android实现获取短信验证码的功能以及自定义GUI短信验证

    短信验证功能大家都很熟悉了.在很多地方都能见到,注册新用户或者短息验证支付等.短信验证利用短信验证码来注册会员,大大降低了非法注册,很大程度上提高了用户账户的安全性. 目前市面上已经有了很多提供短信验 ...

  9. Android之Mob第三方短信验证服务

    目录 mob简单介绍 前期准备 2.1注册登录 2.2创建应用 2.3下载sdk 2.4引入sdK 调用有界面接口 3.1效果图 3.2配置AndroidManifest.xml 3.3添加代码 调用 ...

最新文章

  1. 2021年大数据Spark(十一):应用开发基于IDEA集成环境
  2. ​台媒:台积电2nm制程获重大突破
  3. 配置 linux-bridge mechanism driver - 每天5分钟玩转 OpenStack(77)
  4. ”System.Configuration.ConfigurationSettings.AppSettings“ 已过时----解决方案
  5. 程序员提升工作效率和质量工具
  6. *使用配置类定义Codeigniter全局变量
  7. python cprofile_Python Profilers 分析器
  8. 900款工作岗位竞聘PPT模板免费下载
  9. lnmp一键安装远程连接mysql_阿里云 lnmp一键安装包远程访问Mysql
  10. mac 微信不能设置代理服务器,mac微信能用但是浏览器上不了网
  11. java毕业设计补课管理系统Mybatis+系统+数据库+调试部署
  12. 用UWP模仿网易云音乐的动画
  13. 生鲜配送系统有哪些功能?搭建生鲜配送系统有哪些好处?
  14. 针对顽固dll后缀文件删除
  15. neo4j--Cypher语法练习(WITH、 FOREACH、Aggregation、UNWIND、UNION、CALL)
  16. 高效持续交付的7大原则
  17. p光圈和dc光圈的区别_为什么光圈优先模式这么好?
  18. 安卓11之adb命令清除锁屏密码
  19. 韶音科技2021研究员面试经验
  20. 个人学习笔记——庄懂的技术美术入门课(美术向)01

热门文章

  1. 【人工智能】身边的人工智能
  2. 语音识别基本概念 II
  3. 2021-12-16 《聪明的投资者》学习笔记-13.对四家上市公司的比较--普通了解,不必强求
  4. SSH工具连接服务器密钥改成密码登录
  5. c# mysql数据库连接字符串_C#下各类数据库连接字符串
  6. Win10 WSL Ubuntu如何重新启动(restart),sudo systemctl restart命令无效
  7. 【SCI征稿】Wiley旗下计算机工程类SCI, 检索稳定,对国人友好~
  8. 教您使用IntelliJ IDEA键盘快捷键~
  9. 水果店果品如何摆放,水果店里的水果要怎么摆放
  10. 没有谁是一座孤岛——《岛上书店》