.NET短信接口验证

.NET短信接口验证

之前遇到的一个问题,因为没有接触过,所以自己上网查阅过资料也向他人请教以及老师,.NET短信接口调用,其实,网上有许多免费的短信接口平台,但也是有限度的,如果发送的数量过多,我们也可以购买,我这里数量不多,只需要用免费的就可以了,首先,我们必须要注册一个账户,获得使用的权限,在这里,我用的是互亿无线短信平台,也可以根据个人需要选择。
我们需要把样式写好:

  <div class="col-lg-2 col-md-2 col-sm-2 text-right"><span class="control-label">手机号码</span>
</div>
<div class="col-lg-4 col-md-4 col-sm-4 reset"><div class="col-sm-6" style="margin-left:-15px;"><input type="text"style="width:180px; height:34px;" class="form-control" id="Cellphone" name="Cellphone" onblur="fff()"/></div><div class="col-sm-6" style="margin-left:62px;width:95px!important"><input type="text" class="form-control" style="width:80px; height:34px"/></div>
</div><div class="col-lg-1" style="margin-left:-31px;"><button class="btn btn-success" type="button" id="zphone" onClick="mobile();">获取验证码</button>
</div>

我们要检查我们在Web.config中有没有给到链接:
在这里插入图片描述
如果没有,我们需要在控制器中给到链接:
在这里插入图片描述
这里我们可以自主选择方法。
接下来我们需要在控制器里面写方法:

  public ActionResult dx(string mobile){string account = "用户名/";//用户名是登录用户中心->验证码、通知短信->帐户及签名设置->APIIDstring password = "密码"; //密码是请登录用户中心->验证码、通知短信->帐户及签名设置->APIKEYmobile = "手机号码";Random rad = new Random();int mobile_code = rad.Next(1000, 10000);string content = "您的验证码是:" + mobile_code + " 。请不要把验证码泄露给其他人。";Session["mobile"] = mobile;//Session["mobile_code"] = mobile_code;//string postStrTpl = "account={0}&password={1}&mobile={2}&content={3}";UTF8Encoding encoding = new UTF8Encoding();byte[] postData = encoding.GetBytes(string.Format(postStrTpl, account, password, mobile, content));HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(PostUrl);myRequest.Method = "POST";myRequest.ContentType = "application/x-www-form-urlencoded";myRequest.ContentLength = postData.Length;Stream newStream = myRequest.GetRequestStream();// Send the data.newStream.Write(postData, 0, postData.Length);newStream.Flush();newStream.Close();HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();if (myResponse.StatusCode == HttpStatusCode.OK){StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);//Response.Write(reader.ReadToEnd());string res = reader.ReadToEnd();int len1 = res.IndexOf("</code>");int len2 = res.IndexOf("<code>");string code = res.Substring((len2 + 6), (len1 - len2 - 6));//Response.Write(code);int len3 = res.IndexOf("</msg>");int len4 = res.IndexOf("<msg>");string msg = res.Substring((len4 + 5), (len3 - len4 - 5));Response.Write(msg);Response.End();return Json(msg, JsonRequestBehavior.AllowGet);}else{//访问失败return Json("", JsonRequestBehavior.AllowGet);}}

在写完控制器之后,我们要写一个方法来调用,提交发送短信验证:

<script language="javascript">function mobile() {var Cellphone = $('#Cellphone').val();$.post("/Aiyumye/BasicInformation/dx", { Cellphone: Cellphone }, function (msg) {if (msg == '提交成功') {RemainTime();}});};var iTime = 59;var Account;function RemainTime(){document.getElementById('zphone').disabled = true;var iSecond,sSecond="",sTime="";if (iTime >= 0){iSecond = parseInt(iTime%60);iMinute = parseInt(iTime/60)if (iSecond >= 0){if(iMinute>0){sSecond = iMinute + "分" + iSecond + "秒";}else{sSecond = iSecond + "秒";}}sTime=sSecond;if(iTime==0){clearTimeout(Account);sTime='获取手机验证码';iTime = 59;document.getElementById('zphone').disabled = false;}else{Account = setTimeout("RemainTime()",1000);iTime=iTime-1;}}else{sTime='没有倒计时';}document.getElementById('zphone').value = sTime;}</script>

在这个过程中,必须引用这个插件,不然是没有效果的:
在这里插入图片描述
操作代码就以上的这些,我们实现的效果如下:
在这里插入图片描述
输入手机号码,获取验证码,实现短信验证。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443393.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

密码判断

.NET(C#)密码判断 当我们需要对密码进行判断的时候&#xff0c;可以不使用提示框模态框的方法&#xff0c;用图片显示判断密码正确与否也是比较美观的&#xff0c;也实为方便&#xff0c;这也是老师提供一种方法。 首先&#xff0c;我们需要把样式铺垫好&#xff1a; <div…

身份证正则判断

身份证正则判断 今天分享的是身份证的正则判断&#xff0c;在很多时候需要到&#xff0c;所以在这里记录下来。之前做正则判断的时候&#xff0c;有一些小瑕疵&#xff0c;判断不够全面&#xff0c;正则判断&#xff0c;结构紧凑&#xff0c;全面的判断很重要&#xff0c;所以…

Oracle 单行函数

学习Oracle 单行函数&#xff1a; 包括字符函数&#xff0c;数值函数&#xff0c;日期函数&#xff0c;转换函数&#xff0c;通用函数。 dual是一个”伪表”&#xff0c;可以用来测试函数和表达式。 1&#xff0c; 字符函数 包括大小写控制函数&#xff0c;字符控制函数。 大小…

Oracle 多表查询 --笛卡尔集--左连接--右连接--1999 语法--满外连接

Oracle 多表查询总结 笛卡尔集现象&#xff1a; 笛卡尔集会在下面条件下产生: – 省略连接条件 – 连接条件无效 – 所有表中的所有行互相连接 为了避免笛卡尔集&#xff0c; 可以在where加入有效的连接条件。 Oracle 连接&#xff1a; 使用连接在多个表中查询数据。 在wher…

Oracle 数据库-分组函数总结

Oracle 分组函数 分组函数作用于一组数据&#xff0c;并对一组函数返回一个值。 组函数类型&#xff1a; avg&#xff0c;count&#xff0c;max&#xff0c;min&#xff0c;sum 可以对数值型数据使用avg和sum函数。 select avg(salary),min(salary),max(salary),sum(salary)…

在notepad++中配置java编译环境

在notepad中配置java编译环境 &#xff08;1&#xff09;首先&#xff0c;下载安装了Notepad&#xff0c;在菜单栏那里找到Plugin Manager&#xff0c;有一些版本是没有中文的&#xff0c;所有只有Plugin Manager&#xff0c;如果连Plugin Manager都没有&#xff0c;你则需要去…

Java 基础数据类型

Java 基础数据类型 Java的两大数据类型&#xff1a;基本数据类型、引用类型。 Java语言提供了八种基本数据类型。六种数字类型&#xff08;四个整数型&#xff0c;两个浮点型&#xff09;&#xff0c;一种字符类型&#xff0c;还有一种布尔型。 整形&#xff1a;byte&#xf…

Java获取系统时间

Java获取系统时间 Java获取系统时间 在java 中&#xff0c;有很多种方法都可以获取到系统的当前时间&#xff0c;但也需要到对应的类&#xff0c;不同的类自然有不同的方法。这里为大家介绍获取系统当前时间的四种方式。 1&#xff0e; 通过Calendar类来获取当前时间 需要引用…

Java单例模式的几种实现方式

Java单例模式的几种实现方式 在Java 中&#xff0c;单例类只能有一个实例&#xff0c;必须创建自己的唯一实例&#xff0c;单例类必须给所有其他对象提供这一实例。Java 单例模式有很多种实现方式&#xff0c;在这里给大家介绍单例模式其中的几种。分别是饿汉式&#xff0c;懒…

Java 中抽象类与接口

Java 抽象类&#xff1a; 在面向对象的概念中&#xff0c;所有的对象都是通过类来描绘的&#xff0c;但是反过来&#xff0c;并不是所有的类都是用来描绘对象的&#xff0c;如果一个类中没有包含足够的信息来描绘一个具体的对象&#xff0c;这个类就是抽象类。 抽象类不能创建…

Java 中的进程与线程的实现

了解进程与线程&#xff1a; 进程&#xff1a; 当一个程序进入内存运行时&#xff0c;即变成一个进程。进程是处于运行过程 中的程序&#xff0c;并且具有一定的独立功能&#xff0c;进程是系统进行资源分配和调度的一个独立单 位一般而言&#xff0c;进程包含如下三个特征&…

Java集合工具类:Collections

Java提供了一个操作Set、List和Map等集合的工具类&#xff1a;Collections&#xff0c;该工具类里 提供了大量方法对集合元素进行排序、查询和修改等操作&#xff0c;还提供了对集合对象实现同步控制等方法。 一、 排序操作 如下示例&#xff1a; public class CollectionsSor…

Java异常处理throws/throw

Java的异常被分为两大类&#xff1a;Checked异常和Runtime异常&#xff08;运行时异常&#xff09;。 • Runtime异常&#xff1a;所有的RuntimeException类及其子类的实例&#xff1b; • Checked异常&#xff1a;不是RuntimeException类及其子类的异常实例。 只有Java语言提供…

JDBC 连接MYSQL数据库

1. 加载驱动 Class.forName("com.mysql.jdbc.Driver");com.mysql.jdbc 包名 Driver 驱动名&#xff0c;驱动包需要引入进来 mysql com.mysql.jdbc.Driveroracle oracle.jdbc.driver.OracleDriversqlserver com.microsoft.sqlserver.jdbc.SQLServerDriver …

JSP 之输出九九乘法表

JSP是一种建立在Servlet规范提供的功能之上的动态网页技术&#xff0c;允许在网页文件中嵌入java代码和jsp标记。Java 服务器页面 (Java Server Page &#xff0c;JSP) 扩展名为 .jsp。 1&#xff0e;jsp的执行过程 Jsp文件在用户第一次请求时,会被编译成Servlet,然后由这个Se…

Java 重写与重载

方法的重写&#xff1a; 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不能抛出新的检查异常或者比被重写方法申…

Java新增

在实践项目中我们有可能需要做到新增功能&#xff0c;新增一张表&#xff0c;或是新增多张表。这里我新增的是一张表。 这里主要描述DAO层与Servlet 层&#xff1a; DAO 层&#xff1a; public class UserDaoImpl implements UserDao {private Connection con null;private P…

JSP根据状态动态改变数据表格按钮

有时候在开发的过程中会遇到需要根据状态ID 来动态改变数据表格的按钮&#xff0c;下面我主要讲述两种表格根据ID改变按钮的方式。 下面这种我是用EL 表达式获取表格中的值&#xff1a; <table class"table table-striped table-bordered table-hover" id"s…

Java 模糊查询

在学习Java 这门语言过程中&#xff0c;会遇到无数的知识点与错误&#xff0c;最重要的是我们能够在茫茫的代码中找到突破口&#xff0c;并用心去汲取精华。 在很多时候我们会用到模糊查询&#xff0c;这里是我在编码过程中用到的模糊查询。 JSP &#xff1a; <input value…

Java删除表

Java删除表 这里页面我用了layui 框架做删除的&#xff0c;这里需要引入layui 的css 与js 插件&#xff0c;这里写出主要的代码。 Jsp &#xff1a; //监听行工具事件table.on(tool(test), function(obj){var data obj.data; //获得当前行数据var date1 data.classifyColum…