注册过程中,短信发送验证码流程如下:

(1).用户提交手机号码,申请湖区验证码

(2).网站按照预制规则生成验证码

(3).网站将用户手机号码和验证码发送到短信平台

(4).将制定内容发送到制定手机号码

(5).用户收到验证码后,提交验证

(6).判断,提交表单

接口代码如下:

<span style="font-size:18px;">try{
Encoding myEncoding = Encoding.GetEncoding("UTF-8");
string param = "action=send&userid=" + userid + "&account=" + HttpUtility.UrlEncode(account, myEncoding) + "&password=" + HttpUtility.UrlEncode(password, myEncoding) + "&mobile=13012317839,13210910291&content=" + HttpUtility.UrlEncode(content, myEncoding) + "&sendTime=" + HttpUtility.UrlEncode(sendTime, myEncoding) + "&mobilenumber=2&countnumber=2&telephonenumber=0";
byte[] postBytes = Encoding.ASCII.GetBytes(param);
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://xtx.telhk.cn:8888/sms.aspx");
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded;charset=UTF-8";
req.ContentLength = postBytes.Length;
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(postBytes, 0, postBytes.Length);
}
System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
using (WebResponse wr = req.GetResponse())
{
StreamReader sr = new StreamReader(wr.GetResponseStream(), System.Text.Encoding.UTF8);
System.IO.StreamReader xmlStreamReader = sr;
xmlDoc.Load(xmlStreamReader);
}
if (xmlDoc == null)
{
MessageBox.Show("请求发生异常" );
}
else {
String message = xmlDoc.GetElementsByTagName("message").Item(0).InnerText.ToString();
if(message =="ok"){
MessageBox.Show("发送成功" );
}
else {
MessageBox.Show(message );
}
}
}
catch (System.Net.WebException WebExcp)
{
MessageBox.Show("网络错误,无法连接到服务器!" );
}
</span>

其中,userid 是企业id, account是发送用户账号,password是发送账号的密码, 这些都来自短信接口运营商

content是发送内容,sendTime是定时发送,当为空时,表示立即发送 action是发送任务命令  checkcontent是检查内容包含非法关键字   taskName是任务名称,countnumber号码总数量,mobilenumber是说及号码数量,telephonenumber是小灵通或座机号码数。

通过短信运营商的短信接口,实现发送短信的任务。在content中,设置想发送的内容,通常是验证码,在发送成功后,同时把发送的验证码存入数据库,或者存在session中,以便用户提交后,进行判断验证码是否正确。都判断通过后,方可实现各种功能。

版权声明:本文为博主原创文章,未经博主允许不得转载。

手机发送验证码—.net代码的更多相关文章

  1. jQuery手机发送验证码倒计时代码

    <!DOCTYPE> <html> <head> <meta charset="UTF-8"> <script type=&q ...

  2. jQuery实现的手机发送验证码倒计时效果代码分享

    这是一款基于jquery实现的手机发送验证码倒计时效果代码,可实现实时显示秒数倒计时的功能,还可实现对手机号码格式验证的功能,是一款常用的网站注册发送手机验证码特效代码. 效果描述:注册一个网站,当需 ...

  3. 腾讯云短信服务+Node.js给手机发送验证码

    最近公司需要些一个登陆验证和修改密码验证,需要用到验证码,我用Node.js写了一个给手机发验证码的代码,下面实现的功能有:生产验证码,(计时器)验证码失效时间,给手机发送短信. 首先看官方文档,在给 ...

  4. laravel框架手机发送验证码

    https://blog.csdn.net/sunny_lg/article/details/52471225 现在登录注册时 我们的验证方法 不在单一化  手机发送验证码 已经成为常态 让我们 一起 ...

  5. Android 发送验证码 简易代码

    效果 Activity ;//倒计时 private Timer timer; private Handler handler = new Handler() { public void handle ...

  6. C#实现手机发送验证码

    之前不怎么了解这个,一直以为做起来很复杂. 直到前两天公司要求要做这个功能. 做了之后才发现 这不过就是一个POST请求就能实现的东西.现在给大家分享一下,有不足之处还请多多指教. 废话不多说 直接上 ...

  7. Java 实现手机发送短信验证码

    Java 实现手机发送短信验证码 采用引入第三方工具的方式,网上查了半天,发现简单的实现方式便是注册一个中国网建的账号,新建账号的时候会附带赠几条免费短信,彩信 ,之后想要在使用就得花钱了.简单的操作 ...

  8. 网易云信,发送验证码短信C#版代码

    网易云信发送短信代码(C# 版)....需要注意SHA1 String有转换小写!!!! using System; using System.Collections.Generic; using S ...

  9. C# Ajax 手机发送短信验证码 校验验证码 菜鸟级别实现方法

    1.Ajax请求处理页面: using System; using System.Collections.Generic; using System.Linq; using System.Web; u ...

随机推荐

  1. HDU5852 Intersection is not allowed!

    There are K pieces on the chessboard. The size of the chessboard is N*N. The pieces are initially pl ...

  2. 新疆大学ACM-ICPC程序设计竞赛五月月赛(同步赛) F.猴子排序的期望

    题目链接:https://www.nowcoder.com/acm/contest/116/F 题目描述 我们知道有一种神奇的排序方法叫做猴子排序,就是把待排序的数字写在卡片上,然后让猴子把卡片扔在空 ...

  3. pcap的安装

    pcap,即 packet capture library 抓包库,这个抓包库给抓包系统提供了一个高层次的接口.所有网络上的数据包,甚至是那些发送给其他主机的,通过这种机制,都是可以捕获的.它也支持把 ...

  4. mysql cast函数

    CAST函数语法规则是:Cast(字段名 as 转换的类型 ),其中类型可以为: CHAR[(N)] 字符型 DATE 日期型DATETIME 日期和时间型DECIMAL float型SIGNED i ...

  5. python基础===trheading 模块

    '''threading模块''' import threading import time def music(func): for i in range(2): print("[+]i ...

  6. 005 JAVA多线程和并发基础面试问答(转载)

    原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-answers/ 多线程和并发问题是Ja ...

  7. MyEclipse部署项目报"Add Deployment". Invalid Subscription Level - Discontinuing this MyEclipse

    "Add Deployment". Invalid Subscription Level - Discontinuing this MyEclipse 猜测应该是MyEclipse ...

  8. ie6、ie7下overflow失效

    如果父对象有overflow:hidden属性,子对象中的position属性是relative或者absolute, 那么在ie6和ie7下父对象的overflow会失效,解决办法是给父对象加rel ...

  9. Restful Framework (四)

    目录 一.分页 二.视图 三.路由 四.渲染器 一.分页 回到顶部 试问如果当数据量特别大的时候,你是怎么解决分页的? 方式a.记录当前访问页数的数据id 方式b.最多显示120页等 方式c.只显示上 ...

  10. 深入解析当下大热的前后端分离组件django-rest_framework系列四

    查漏补缺系列 解析器 request类 django的request类和rest-framework的request类的源码解析 局部视图 from rest_framework.parsers im ...