現在很多網站都是短信發送的功能,怎麼實現的呢。對於個人站長來說的話,通過使用SMS短信通API接口相對比較劃算和簡單。那怎麼實現呢,步驟如下:
1. 從網上(http://sms.webchinese.cn/)申請賬號,記住用戶名,密碼會發到手機上,這僅是登陸密碼。注冊後會送5條短信、和3條彩信的發送量。
2.查看SMS短信通API下行接口(http://sms.webchinese.cn/api.shtml),然後獲取秘鑰,其實就是加密後的登錄密碼。開始敲代碼,相關代碼如下:
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Text; using System.Web; namespace Y_PostSms { public class YMethod { private string THE_UID = ""; //用戶名 private string THE_KEY = ""; //接口秘鑰 /// <summary>返回UTF-8編碼發送接口地址</summary> /// <param name="receivePhoneNumber">目的手機號碼(多個手機號請用半角逗號隔開)</param> /// <param name="receiveSms">短信內容,最多支持400個字,普通短信70個字/條,長短信64個字/條計費</param> /// <returns></returns> public string GetPostUrl(string smsMob, string smsText) { string postUrl = "http://utf8.sms.webchinese.cn/?Uid=" + THE_UID + "&key=" + THE_KEY + "&smsMob=" + smsMob + "&smsText=" + smsText; return postUrl; } /// <summary> 發送短信,得到返回值</summary> public string PostSmsInfo(string url) { //調用時只需要把拼成的URL傳給該函數即可。判斷返回值即可 string strRet = null; if (url == null || url.Trim().ToString() == "") { return strRet; } string targeturl = url.Trim().ToString(); try { HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl); hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"; hr.Method = "GET"; hr.Timeout = 30 * 60 * 1000; WebResponse hs = hr.GetResponse(); Stream sr = hs.GetResponseStream(); StreamReader ser = new StreamReader(sr, Encoding.Default); strRet = ser.ReadToEnd(); } catch (Exception ex) { strRet = null; } return strRet; } /// <summary>確認返回信息 </summary> public string GetResult(string strRet) { int result = 0; try { result = int.Parse(strRet); switch (result) { case -1: strRet = "沒有該用戶賬戶"; break; case -2: strRet = "接口密鑰不正確,不是賬戶登陸密碼"; break; case -21: strRet = "MD5接口密鑰加密不正確"; break; case -3: strRet = "短信數量不足"; break; case -11: strRet = "該用戶被禁用"; break; case -14: strRet = "短信內容出現非法字符"; break; case -4: strRet = "手機號格式不正確"; break; case -41: strRet = "手機號碼為空"; break; case -42: strRet = "短信內容為空"; break; case -51: strRet = "短信簽名格式不正確,接口簽名格式為:【簽名內容】"; break; case -6: strRet = "IP限制"; break; default: strRet = "發送短信數量:" + result; break; } } catch (Exception ex) { strRet = ex.Message; } return strRet; } } }
3. 找在線客服開通發送權限,填寫好簽名,效果圖如下:
源代碼:Y_PostSms.zip