在最近合作开发过程中有用到验证码验证信息这个功能的需求,于是开始找短信服务的第三方平台,最后找到了网建短信通平台。其实实现过程很简单,先在该平台上注册用户后,它会给你五条免费的短信可使用。我们要连接第三方平台就需要它的API接口,接口代码在他的官网平台上已经给出,我用的是C#的,如下图所示。
//需要用到的命名空间
using System.Net;
using System.IO;
using System.Text;
//调用时只需要把拼成的URL传给该函数即可。判断返回值即可
public string GetHtmlFromUrl(string 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;
}
当然写了这些是不够的,GetHtmlFromUrl方法中传的参url是什么,官网也进行了说明
我用的是UTF-8编码的发送接口地址
所以在另一个事件中,将url补全即可
例如我在另一个button事件中所写的url
url="http://utf8.sms.webchinese.cn/?"+"Uid=本网站用户名"+"&key=接口密钥"+"&smsMob=需要接收短信的手机号"+"&smsText=短信内容";
string Result = GetHtmlFromUrl(url);
MessageBox.Show(Result);
标红的地方是根据自己情况需要重写的信息。调用GetHtmlFromUrl方法,返回提示输出结果。
根据不同的返回结果,判定是否发送成功。如果为>0,即为发送成功。手机等待接收短信即可。
最后将一张我尝试做发送短信验证码,并成功收到该短信的截图附上。
我是以本人所在公司的名义发送的,所以进行了遮盖。