C#实现发送手机验证码功能

时间:2021-10-20 12:09:06

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

1.先获取一个随机数字验证码(这里是6位数),然后编辑好需要发送的内容。 这里还做了个手机号码合法性的验证。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public string verificationcode(string mobile)
    {
      if (ishandset(mobile))
      {
        string code = new random().next(111111, 999999).tostring();
        string content = "亲,本次操作的验证码为:" + code + " 切勿泄漏此验证码信息给他人,如非本人操作,请忽略此条信息。【唐江巴巴】";
        bool ret = sendfast(mobile, content);
        if (ret)
        {
          return code;
        }
        else
        {
          return "发送失败";
        }
      }
      else
      {
        return "手机号码格式不正确";
      }
    }
    /// <summary>
    /// 验证手机号码是否合法
    /// </summary>
    /// <param name="str_handset"></param>
    /// <returns></returns>
    public bool ishandset(string str_handset)
    {
      return system.text.regularexpressions.regex.ismatch(str_handset, @"^1[3|4|5|7|8][0-9]\d{8}$");
    }

2.然后调用发送消息的方法。传入地址和参数就ok了, 这里需要注意的是 要把发送的内容转换成字节。

C#实现发送手机验证码功能C#实现发送手机验证码功能

3. 如果发送成功,返回的是一串xml数据,像这样的

?
1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8" ?><returnsms>
<returnstatus>success</returnstatus>
<message>ok</message>
<remainpoint>62095</remainpoint>
<taskid>2779227</taskid>
<successcounts>1</successcounts></returnsms>

以上所述是小编给大家介绍的c#实现手机发送验证码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:http://www.cnblogs.com/larry-th/p/7090054.html