为 Asp.net 网站新增发送手机短信功能
2010-11-18 09:53
363 查看
本文旨在帮助那些为网站发送手机短信正在寻求解决方案还未最终找到解决方案的朋友提供参考。
适合人群 须满足一下条件之一,如果以下3个条件您都不满足,为节约您宝贵的时间,请终止阅读本篇文章。
条件如下:
1.一条短信内容进行短信群发的目标手机数量不能太大,否则出现严重的短信延时。
2.不想买短信猫之类的设备,同时又觉得部分国有电信单位提供的短信接口不好用,或者认为其服务不够好。
3.担心网络上短信sp供应商信息不真实,毕竟大部分短信供应商不能通过当面交易。
看到这里说明您对我的解决方案是感兴趣的,我这样解决的:
找过几家国有企业短信sp供应商,效果比我想象的要差很多,于是直接在网络上找提供类似服务的短信供应商。发现有很多这样的民营sp短信供应商的服务都是通过网银或者支付宝进行购买。这又让我担心是骗钱的。说实在的挺苦恼的,甚至有朋友建议直接买个几百元的低端多普达,在windows mobile 内写一个自动发送短信的功能充当短信猫。后来苦苦寻觅中我发现了 悠逸企业短信平台(申明:无任何广告嫌疑!)可以购买一百元1000条手机短信而且注册后可以先试用10条短信。将10条试用完后,我用信用卡通过其网站购买了100元短信。心想如果被骗了,这样损失也不会很大。详细步骤如下:
1.在其平台上注册一个属于自己的用户名。
2.在我们的网站或者类库中加入这段方法 (注:此方法不是官方提供的,是我看完官方的API后用C#编写)
很“干净”的调用,没有WebService也没有COM。
唯一要注意的就是编码用 GB2312 否则您收到短信的中文部分都是乱码,另外第10行的用户名和密码被硬编码了,应写在配置文件内。
最后,希望本篇能够帮助到您!
适合人群 须满足一下条件之一,如果以下3个条件您都不满足,为节约您宝贵的时间,请终止阅读本篇文章。
条件如下:
1.一条短信内容进行短信群发的目标手机数量不能太大,否则出现严重的短信延时。
2.不想买短信猫之类的设备,同时又觉得部分国有电信单位提供的短信接口不好用,或者认为其服务不够好。
3.担心网络上短信sp供应商信息不真实,毕竟大部分短信供应商不能通过当面交易。
看到这里说明您对我的解决方案是感兴趣的,我这样解决的:
找过几家国有企业短信sp供应商,效果比我想象的要差很多,于是直接在网络上找提供类似服务的短信供应商。发现有很多这样的民营sp短信供应商的服务都是通过网银或者支付宝进行购买。这又让我担心是骗钱的。说实在的挺苦恼的,甚至有朋友建议直接买个几百元的低端多普达,在windows mobile 内写一个自动发送短信的功能充当短信猫。后来苦苦寻觅中我发现了 悠逸企业短信平台(申明:无任何广告嫌疑!)可以购买一百元1000条手机短信而且注册后可以先试用10条短信。将10条试用完后,我用信用卡通过其网站购买了100元短信。心想如果被骗了,这样损失也不会很大。详细步骤如下:
1.在其平台上注册一个属于自己的用户名。
2.在我们的网站或者类库中加入这段方法 (注:此方法不是官方提供的,是我看完官方的API后用C#编写)
public static bool SendMobileMsg(string msgContent, List<string> destListPhones) { try { bool result = false; string strPhones = string.Join(";", destListPhones.ToArray()); strPhones += ";"; var encoding = System.Text.Encoding.GetEncoding("GB2312"); string postData = string.Format("uid=用户名&pwd=密码&mobile={0};&msg={1}&dtime=", strPhones, msgContent); byte[] data = encoding.GetBytes(postData); // 定义 WebRequest HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://www.smsadmin.cn/smsmarketing/wwwroot/api/post_send/"); myRequest.Method = "POST"; myRequest.ContentType = "application/x-www-form-urlencoded"; myRequest.ContentLength = data.Length; Stream newStream = myRequest.GetRequestStream(); //发送数据 newStream.Write(data, 0, data.Length); newStream.Close(); // 得到 Response HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse(); StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default); string content = reader.ReadToEnd(); if (content.Substring(0, 1) == "0") result = true; else { if (content.Substring(0, 1) == "2") //余额不足 { //"手机短信余额不足"; //TODO } else { //短信发送失败的其他原因,请参看官方API } result = false; } return result; } catch { return false; } }
很“干净”的调用,没有WebService也没有COM。
唯一要注意的就是编码用 GB2312 否则您收到短信的中文部分都是乱码,另外第10行的用户名和密码被硬编码了,应写在配置文件内。
最后,希望本篇能够帮助到您!
相关文章推荐
- 为 Asp.net 网站新增发送手机短信功能
- 为 Asp.net 网站新增发送手机短信功能
- 为 Asp.net 网站新增发送手机短信功能
- 为 Asp.net 网站新增发送手机短信功能
- MVC使用ASP.NET Identity 2.0实现用户身份安全相关功能,比如通过短信或邮件发送安全码,账户锁定等
- ASP.NET动态网站开发培训-25.论文管理系统(五、添加后台新增及修改功能)
- ASP.NET手机短信功能实现
- 手机网站实现一键拨号及html5短信发送功能JS代码(微信适用)
- C# .net实现发送手机短信功能
- SNF开发平台WinForm之十二-发送手机短信功能调用-金笛-SNF快速开发平台3.3-Spring.Net.Framework
- ASP.NET发送手机短信验证码
- [转]asp.net利用Web Service实现短信发送致手机
- asp.net限时发送手机验证码
- ASP.NET 中点击按钮时邮件自动发送功能实例
- asp.net网站中添加百度地图功能
- Asp.net MVC 3 开发企业网站系统仿照博客园部分功能--总体设计
- ASP.NET中常用功能代码总结(发送邮件篇)
- Asp.net实现网站的RSS功能
- ASP.NET让你的网站增加RSS订阅功能