您的位置:首页 > 编程语言 > C#

C#_发送手机短信

2015-09-14 17:58 393 查看
偶然想起,像编写一个从电脑向手机发送短信的程序,从网上查找到有三种方式:(1)使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册;(2)使用短信mao的方式进行短信的发送,这种方式应该是比较的常用,前提是需要购买硬件设备,这个就不考虑了(3)使用中国网建提供的SMS短信平台,但是,用完几条免费的后,就要收费了。

首先,我用C#实现第一种方法,发现总是错误,这个不解,后来从网上查找原因,有的说,新浪这个功能已经不用了,我也不太清楚,就放弃了这种方法,

后来实现了第三种方法。

具体实现如下:

1. 从网上(http://sms.webchinese.cn/)申请账号,记住用户名,密码会发到手机上,这仅是登陆密码。里面还有短信秘钥,这个要得到,这是后面要用到的,要在里面写好签名,还有,具体实现,要参考SMS短信通API下行接口参数(http://sms.webchinese.cn/api.shtml),这个网页上就有各种语言的实现方式,我用C#实现,熟悉java的可以用java。

2. 现在就可以编程实现了,这个也很简单,参考接口参数网页的C#实现即可,下面给出我的例子!

其界面如下:

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;
}


Code
提示:HTTP调用URL接口时, 参数值必须URL编码后再调用

参数变量说明
Gbk编码Urlhttp://gbk.sms.webchinese.cn/
Utf-8编码Urlhttp://utf8.sms.webchinese.cn/
Uid本站用户名(如您无本站用户名请先注册)[免费注册]
Key注册时填写的接口秘钥(可到用户平台修改接口秘钥)[立刻修改]
如需要加密参数,请把Key变量名改成KeyMD5,
KeyMD5=接口秘钥32位MD5加密,大写。
smsMob目的手机号码(多个手机号请用半角逗号隔开)
smsText短信内容,最多支持300个字,普通短信70个字/条,长短信64个字/条计费
多个手机号请用半角,隔开

GBK编码发送接口地址http://gbk.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全密码&smsMob=手机号码&smsText=短信内容 UTF-8编码发送接口地址: http://utf8.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全密码&smsMob=手机号码&smsText=短信内容 获取短信数量接口地址(UTF8): http://sms.webchinese.cn/web_api/SMS/?Action=SMS_Num&Uid=本站用户名&Key=接口安全密码 获取短信数量接口地址(GBK): http://sms.webchinese.cn/web_api/SMS/GBK/?Action=SMS_Num&Uid=本站用户名&Key=接口安全密码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: