C#實現手機發送驗證碼


之前不怎么了解這個,一直以為做起來很復雜。 直到前兩天公司要求要做這個功能。 做了之后才發現 這不過就是一個POST請求就能實現的東西。現在給大家分享一下,有不足之處還請多多指教。 廢話不多說 直接上代碼。

1.先獲取一個隨機數字驗證碼(這里是6位數),然后編輯好需要發送的內容。 這里還做了個手機號碼合法性的驗證。

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}$");
        }
Code

2.然后調用發送消息的方法。傳入地址和參數就OK了, 這里需要注意的是 要把發送的內容轉換成字節。

3. 如果發送成功,返回的是一串XML數據,像這樣的

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

這樣就完成了, 希望對你們有幫助。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM