C#实现手机发送验证码
具体实现——封装一个类里,U层直接调用
配置文件的内容如下
验证手机号的正则表达式
首先先需要注册第三方网站,给大家推荐一个网站互亿无线,注册了之后每个用户可以免费发送50条短信。
下面以C#实现手机发送验证码为例。基本思路是本地生成一个4位数的随机数,然后以本地的用户名+密码+随机数拼接成一个字符串,转换为二进制数据,以网络流的形式发送到“互亿无线”的网站上,接下来的工作网站就帮你完成了。
具体实现——封装一个类里,U层直接调用
public class Phone
{public static string PostUrl = ConfigurationManager.AppSettings["WebReference.Service.PostUrl"];//写在了配置文件中/// <summary>/// 实现发送验证码/// </summary>/// <param name="phoneno">手机号</param>/// <returns>验证码</returns>public static int PhoneNo(string phoneno){string account = "******";//登录“互亿无线网站”查看用户名 登录用户中心->验证码通知短信>产品总览->API接口信息->APIIDstring password = "*******"; //登录“互亿无线网站”查看密码 登录用户中心->验证码通知短信>产品总览->API接口信息->APIKEYstring mobile = phoneno;//string mobile = Request.QueryString["mobile"];Random rad = new Random();int mobile_code = rad.Next(1000, 10000); //生成随机数//textBox3.Text = mobile_code.ToString();返回值string content = "您的验证码是:" + 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)); //将字符串postStrTpl中的格式项替换为四个个指定的 Object 实例的值的文本等效项。再转为二进制数据HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(PostUrl);//对统一资源标识符 (URI) 发出请求。 这是一个 abstract 类。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);//code状态返回值;msg查询结果描述string res = reader.ReadToEnd();int len1 = res.IndexOf("</code>");int len2 = res.IndexOf("<code>");string code = res.Substring((len2 + 6), (len1 - len2 - 6));int len3 = res.IndexOf("</msg>");int len4 = res.IndexOf("<msg>");string msg = res.Substring((len4 + 5), (len3 - len4 - 5));//MessageBox.Show(msg);return mobile_code;}else{return 0;//访问失败}}}
配置文件的内容如下
<appSettings><!--发送验证码的接口--><add key="WebReference.Service.PostUrl" value="http://106.ihuyi.cn/webservice/sms.php?method=Submit"/><add key="WebReference.sms" value="http://106.ihuyi.cn/webservice/sms.php?smsService"/>
</appSettings>
验证手机号的正则表达式
/// <summary>
/// 验证手机号的正则表达式
/// </summary>
/// <param name="phoneid">手机号</param>
/// <returns>bool值</returns>
public static bool VailPhoneCode(string phoneid)
{string str = @"^1[3-9]\d{9}$"; Regex regex = new Regex(str);//正则表达式类if (regex.IsMatch(phoneid))//Regex验证{return true;}else{return false;}
}
我这里还有其他语言实现手机发送验证码源码,大家可以私信我。私发给你哦。
如果本篇博客对您有一定的帮助,大家记得留言+点赞哦。
C#实现手机发送验证码相关推荐
- 手机发送验证码的业务逻辑探究-主要是安全性,响应性
手机发送验证码的业务逻辑探究-主要是安全性,响应性 这样一来,只要知道静态的验证码是什么,脚本就可以轻松填写正确的验证码. 解决方法: 1后台是否可以限制一个IP发送的次数 2限定发送验证码的一分钟的 ...
- html如何发送验证码到手机,页面效果,给手机发送验证码
html> 定时发送验证码 var wait = 5; function send(o) { if(wait==5){ //向服务器发送请求,给手机发送验证码 // $.post("/ ...
- 网站登录密码忘记后,通过向手机发送验证码实现找回密码的实现方法
今天我想了一天如何实现网站用户在忘记了密码后,如何通过向手机发送验证码来重新设置密码.验证码的验证以及生成都已经做好了,现在主要是解决如何向用户手机发送短信.显然这需要一个第三方提供的短信接口,来帮助 ...
- springboot向手机发送验证码
** springboot向手机发送验证码 ** 1.在腾讯云里面申请短信签名,短信模板 在百度搜索腾讯云,进入到腾讯云里面,在产品里搜索短信 然后找到国内短信 创建签名和模板,创建签名可以用公众号. ...
- html给手机号发送验证码,js如何实现手机发送验证码功能
js如何实现手机发送验证码功能 发布时间:2021-06-21 12:24:46 来源:亿速云 阅读:82 作者:小新 这篇文章将为大家详细讲解有关js如何实现手机发送验证码功能,小编觉得挺实用的,因 ...
- 微信小程序 授权登录+手机发送验证码+jwt验证接口(laravel8+php)
参考博客 小程序授权登录并 laravel7(laravel8) token 应用 - 王越666 - 博客园 微信小程序sku商品规格选择器 - 简书 微信小程序 和 laravel8 实现搜索后分 ...
- 健康管理系统第七天(移动端_体检预约(手机号校验、发送验证码之后30秒倒计时效果、生成验证码、向手机发送验证码))
一.体检预约流程 用户可以通过如下操作流程进行体检预约: 1.在移动端首页点击体检预约,页面跳转到套餐列表页面 2.在套餐列表页面点击要预约的套餐,页面跳转到套餐详情页面 3.在套餐详情页面点击立即预 ...
- C#实现向手机发送验证码短信
效果描述 当点击button1后向textbox1中输入的号码的手机发送一条验证码短信 步骤 注册 互亿无线 账号 查找APIID和APIKEY 窗口布局的设计布局 代码的书写 所有代码 注册 互亿无 ...
- 【redis】模拟手机发送验证码
要求: 1.输入手机号,点击发送后随机生成6位数字码,2分钟有效 2.输入验证码,点击验证,返回成功或失败 3.每个手机号每天只能发送3次 分析: 随机生成6位数数字码: 使用Ramdom 验证码2分 ...
- 基于Java--获取城市天气与给手机发送验证码--HTTP协议实践
目录 一.认识网址 二.获取城市的天气预报信息 三.给指定手机号码发送验证码 四.实现自定义短信内容的短信验证码发送 参考 一.认识网址 网址的组成:协议://域名:端口号/虚拟路径?参数列表#锚点 ...
最新文章
- Java基础知识回顾-6
- Understanding CORS
- Android优化五:布局优化
- Mybatis的update方法
- 日常生活小技巧 -- word中插入visio和视频
- python调用API来实现机器人
- 算法---查找倒数第k个链表的值
- 网络设计分层设计的原理
- jsp页面科学计数法显示问题的解决办法
- 【jQuery笔记Part1】06-jQuery对象与js对象转换
- 盒子模型(W3C盒子和IE盒子)
- 利用python解析手机通讯录
- android arm linux下使用内存转储crash工具分析 kernel system dump问题
- 关于【CSDN免积分下载器】的分析
- 梯形公式和辛普森的Matlab
- Facebook想要成为下一个微信,难!
- 【Unity3D自学记录】 Unity3D游戏开发之键盘选取、切换目标
- 【论文 CCF C】An Adaptive Box-Normalization Stock Index Trading Strategy Based on Reinforcement Learning
- 2022年全球及中国制动系统行业头部企业市场占有率及排名调研报告
- 两组三维对应点/坐标系转换公式及简要推导
热门文章
- 使用protobuf_example_addressbook.proto项目时的问题:PROTOBUF_USE_DLLS
- 胎死腹中的天颖工作室-2004年初的痛楚
- Flink的重启策略(RestartStrategy)实战
- 为什么会出现淘宝客比价订单?怎样才能省钱购物?
- 怎样批量替换Word中的文字?这一招Word文字替换技巧你会吗
- 软件编程语言培训师张孝祥
- 【无标题】Vue长列表性能优化常用方案
- python小玩具(恶俗古风生成器)
- 去律师面试python_我的五次律所面试到底都经历了什么,这些真相……
- Pytorch——momentum动量