最近遇到的项目需要个随机短信验证码实现注册用户

选用的是“云信使”,因为有15条免费的测试短信可以验证代码是否正确调用该短信api

地址

进入短信平台

一、实名认证 + 短信模板

用户认证完成后,创建一个验证码的短信模板

等待审核

二、下载SDK示例文档

往下拉

在项目中引入MessageLogController.java

分析MessageLogController.java 代码,可以发现其实就是 发送一个http请求

我们也可以自己写一个java http请求,。。可以在注册页面获取手机号和随机数后通过ajax异步请求一个jsp页面,传入要发送给的手机号码和随机数,然后这个jsp 调用java http请求即可发送

官方SDK:

以下,是 6位数字 验证码生成 由login.jsp 文件 ajax 请求到 sedMess.jsp + 倒计时重新发送提示 + 验证输入的验证码 是否和 发送的验证码相同

【通过全局变量保留 生成的随机数 用于 和用户输入的验证码相对比】

<script>

    var number = "";
function shortMessagraxc() {
var xx = document.getElementById("newphone").value;
if(xx == ""){
alert("请输入手机号码!");
}else{
var num ="";
for(var i = 0;i < 6;i++){
num += Math.floor(Math.random()*10);
}
alert(xx+" "+num); var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST","sedMess.jsp?number="+num+"&phone="+xx,true);
xmlhttp.send(); //修改全局变量
$.ajax({
async: false,
success: function() {
number = num;
}
}) //alert(number);//检测全局变量 是否被修改
var count = 10;
var countdown = setInterval(CountDown, 1000);
function CountDown() {
$(".btn_yzm").attr("disabled", true);
$(".btn_yzm").val("" + count + "s");
if (count == 0) {
$(".btn_yzm").val("重新获取").removeAttr("disabled");
clearInterval(countdown);
}
count--;
}
} }; function checkM(){
//alert(number); //检测全局变量 是否被修改
var yxy = document.getElementById("yanZM").value;
if( yxy == null){
alert("请输入验证码");
return false;
}else if(yxy != number){
alert("请输入正确验证码");
document.getElementById("yanZM").value = "";
return false;
}else{
return true;
}
} </script>

短信验证码api的更多相关文章

  1. flask开发restful api系列(5)-短信验证码

    我们现在开发app,注册用户的时候,不再像web一样,发送到个人邮箱了,毕竟个人邮箱在移动端填写验证都很麻烦,一般都采用短信验证码的方式.今天我们就讲讲这方面的内容. 首先,先找一个平台吧.我们公司找 ...

  2. 短信API——短信验证码

    简介 短信服务(Short Message Service.SMS)是指通过调用短信发送API,将指定短信内容发送给指定手机用户. 阿里云短信服务 阿里云短信服务产品介绍:https://www.al ...

  3. 使用聚合数据API查询快递数据-短信验证码-企业核名

    有位朋友让我给他新开的网站帮忙做几个小功能,如下: 输入快递公司.快递单号,查询出这个快件的所有动态(从哪里出发,到了哪里) 在注册.登录等场景下的手机验证码(要求有一定的防刷策略) 通过输入公司名的 ...

  4. day102:MoFang:后端完成对短信验证码的校验&基于celery完成异步短信发送&flask_jwt_extended&用户登录的API接口

    目录 1.用户注册 1.后端完成对短信验证码的校验 2.基于celery实现短信异步发送 2.用户登录 1.jwt登录验证:flask_jwt_extended 2.服务端提供用户登录的API接口 1 ...

  5. Atitit. 破解  拦截 绕过 网站 手机 短信 验证码  方式 v2 attilax 总结

    Atitit. 破解  拦截 绕过 网站 手机 短信 验证码  方式 v2 attilax 总结 1. 验证码的前世今生11.1. 第一代验证码 图片验证码11.2. 第二代验证码  用户操作 ,比如 ...

  6. php实现的IMEI限制的短信验证码发送类

    php实现的IMEI限制的短信验证码发送类 <?php class Api_Sms{ const EXPIRE_SEC = 1800; // 过期时间间隔 const RESEND_SEC = ...

  7. atitit.短信 验证码  破解  v3 p34  识别 绕过 系统方案规划----业务相关方案 手机验证码  .doc

    atitit.短信 验证码  破解  v3 p34  识别 绕过 系统方案规划----业务相关方案 手机验证码  .doc 1. 手机短信验证码 vs 图片验证码 安全性(破解成本)确实要高一些1 1 ...

  8. java接入创蓝253短信验证码

    说明 项目是springboot框架 1.短信配置文件 包含验证码发送路径.用户名.密码 chuanglan.requesturl= chuanglan.account= chuanglan.pswd ...

  9. Laravel5中使用阿里大于(鱼)发送短信验证码

    在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置:阿里大于,是阿里通信旗下优质便捷的云通信服务平台,整合了三大运营商的通信能力,为 ...

随机推荐

  1. SELinux 对nginx访问目录的影响

    centos新装的系统,用yum 安装的nginx . 因用yum 安装的nginx 默认目录在/usr下面. 当SELinux开启时,将会禁止访问设置在其他路径下的地址.比如我设置server 中 ...

  2. poj1830 开关问题[高斯消元]

    其实第一反应是双向BFS或者meet in middle,$2^{14}$的搜索量,多测,应该是可以过的,但是无奈双向BFS我只写过一题,已经不会写了. 发现灯的操作情况顺序不影响结果,因为操作相当于 ...

  3. MFC界面库BCGControlBar v30.1——Grid/Report控件

    亲爱的BCGSoft用户,我们非常高兴地宣布BCGControlBar Professional for MFC和BCGSuite for MFC v30.1正式发布!此版本包含themed find ...

  4. 如何让一个sprite绕一个点旋转,同时又可以实现指定旋转角度并慢慢停下的效果

    如何让一个sprite绕一个点旋转,同时又可以实现指定旋转角度并慢慢停下的效果 首先列出sprite围绕一个点旋转的公式,这个可以自己推导,假设sprite的起始位置为(x1,y1),围绕旋转的中心点 ...

  5. C# 编辑

    if (state == "编辑") { ht["修改人"] = Helper.用户名; ht["修改时间"] = DateTimeHelp ...

  6. C# 动态访问webserver 帮助类

    /* 调用方式 * string url = "http://www.webservicex.net/globalweather.asmx" ; * string[] args = ...

  7. TTTTTTTTTTTTTTTTTT hdu 1800 字符串哈希 裸题

    题意:意思是有若干个飞行员,需要在扫帚上练习飞行,每个飞行员具有不同的等级,且等级高的飞行员可以当等级低的飞行员的老师,且每个飞行员至多有且只有一个老师和学生.具有老师和学生关系的飞行员可以在同一把扫 ...

  8. 5.聚类算法k-means

    聚类与分类的区别在于,是在没有给定划分类别的情况下,更具数据相似度进行样本分组的一种办法,是一种非监督的学习算法,聚类的输入时一组未被标记的样本,聚类更具数据自身的距离或者相似度将其划分为若干组,划分 ...

  9. mybatis invalid bound statement (not found)

    Spring boot + Mybatis : Invalid bound statement (not found) 如果只在启动类上配置@MapperScan注解,默认只扫描和mapper接口同名 ...

  10. rem等比例自适应手机尺寸

    方法:用sass的函数动态计算rem值 $rem : 75px;基准值 设计图是750的宽 设为$rem变量设为75,设计图是350的宽 设为$rem变量设为35,老的写法 需要用js来配合来动态改变 ...