发送SMS短信(JSON) 转载
http://blog.csdn.net/ldl22847/article/details/42553883
| public static string GetMobileConfByUserId(string userid) |
| { |
| string rs = null; |
| if (!string.IsNullOrEmpty(userid)) |
| { |
| if (string.IsNullOrEmpty(strOnLine)) |
| { |
| strOnLine = ConfigurationManager.AppSettings["OnLineUrl"]; |
| } |
| ServicePointManager.DefaultConnectionLimit = 300; |
| System.GC.Collect(); |
| CookieContainer cookieContainer = new CookieContainer(); |
| // 设置提交的相关参数 |
| HttpWebRequest request = null; |
| HttpWebResponse SendSMSResponse = null; |
| Stream dataStream = null; |
| StreamReader SendSMSResponseStream = null; |
| try |
| { |
| request = WebRequest.Create(strOnLine) as HttpWebRequest; |
| request.Method = "POST"; |
| request.KeepAlive = false; |
| request.ServicePoint.ConnectionLimit = 300; |
| request.AllowAutoRedirect = true; |
| request.Timeout = 10000; |
| request.ReadWriteTimeout = 10000; |
| request.ContentType = "application/json"; |
| request.Accept = "application/xml"; |
| request.Headers.Add("X-Auth-Token", HttpUtility.UrlEncode("openstack")); |
| string strContent = "{\"appId\":\"\",\"method\":\"\",\"tokenId\":\"\",\"data\":{\"userAccountId\":\"" + userid + "\"}}"; |
| byte[] bytes = Encoding.UTF8.GetBytes(strContent); |
| request.Proxy = null; |
| request.CookieContainer = cookieContainer; |
| using (dataStream = request.GetRequestStream()) |
| { |
| dataStream.Write(bytes, 0, bytes.Length); |
| } |
| SendSMSResponse = (HttpWebResponse)request.GetResponse(); |
| if (SendSMSResponse.StatusCode == HttpStatusCode.RequestTimeout) |
| { |
| if (SendSMSResponse != null) |
| { |
| SendSMSResponse.Close(); |
| SendSMSResponse = null; |
| } |
| if (request != null) |
| { |
| request.Abort(); |
| } |
| return null; |
| } |
| SendSMSResponseStream = new StreamReader(SendSMSResponse.GetResponseStream(), Encoding.GetEncoding("utf-8")); |
| string strRespone = SendSMSResponseStream.ReadToEnd(); |
| return strRespone; |
| } |
| catch (Exception ex) |
| { |
| if (dataStream != null) |
| { |
| dataStream.Close(); |
| dataStream.Dispose(); |
| dataStream = null; |
| } |
| if (SendSMSResponseStream != null) |
| { |
| SendSMSResponseStream.Close(); |
| SendSMSResponseStream.Dispose(); |
| SendSMSResponseStream = null; |
| } |
| if (SendSMSResponse != null) |
| { |
| SendSMSResponse.Close(); |
| SendSMSResponse = null; |
| } |
| if (request != null) |
| { |
| request.Abort(); |
| } |
| } |
| finally |
| { |
| if (dataStream != null) |
| { |
| dataStream.Close(); |
| dataStream.Dispose(); |
| dataStream = null; |
| } |
| if (SendSMSResponseStream != null) |
| { |
| SendSMSResponseStream.Close(); |
| SendSMSResponseStream.Dispose(); |
| SendSMSResponseStream = null; |
| } |
| if (SendSMSResponse != null) |
| { |
| SendSMSResponse.Close(); |
| SendSMSResponse = null; |
| } |
| if (request != null) |
| { |
| request.Abort(); |
| } |
| } |
| } |
| return rs; |
| } |
http://www.lanzsoft.cn/Product/cp1/dxapi/
短信API文档
一.短信接口文档说明
1、概述:
本文档详细描述了商务短信快车短信接口接入办法及注意事项,接口发送短信的三网合一代码为10690422,支持全国范围内三网短信收发,短信API调用简单,欢迎免费注册短信接口帐号体验。
2、重点注意事项:
| 1 | 地址:www.lanz.net.cn域名对应的IP地址是219.136.252.188 |
| 2 | 登录:密码需加密传输(加密方式 SHA1 40位大写)。加密转换工具:点击进行转换操作 |
| 3 | 短信内容:自助获取测试帐号的用户短信内容需按照专用模板进行编辑,点击查看模板说明。 |
| 4 | 发送频率:建议间隔0.1秒提交一次,群发一次最多提交1000个手机号码。另我司短信系统启用了同一个手机发送频率限制,第一条发送后,2秒后才能发第2条,第3条10分钟后才能发,隔2秒后才能发第4条,以此类推(默认一天最多发10条,特殊情况可联系技术放开限制)。 |
| 5 | 编码:数据提交统一使用 GB2312编码,Content参数需要注意编码规则,部分开发语言需做URLENCODE编码,详细参见代码示例。密码加密和编码转换工具:点击进行转换操作。 |
| 6 | 安全防护:对于发送短信验证码类的用户(验证码、密码、注册等行为的短信),需要加强安全管理。建议采用以下三个防范措施:A、采用安全图片验证码;B、单IP请求次数限制;C、发送时间间隔限制。 |
二.短信接口功能
- 短信发送
- 回复短信
- 查询余量
- 语音发送
- 推送模式
- 错误代码
发送短信 DirectSendSMSs(群发一次最多1000个手机号码) URL:http://www.lanz.net.cn/LANZGateway/DirectSendSMSs.asp 1)输入参数: 名称 类型 是否必须 示例值 描述 UserID String 是 999999 用户ID (6位纯数字) Account String 是 LanzSoft88 用户名 PassWord String 是 Lanz2016FG 密码(密码需加密传输 SHA1 40位大写) Content String 是 您的注册验证码为8268,该验证码10分钟内有效。 如非本人操作请忽略此短信!【浪驰软件】 短信按照70个字数计费为一条短信,但当短信内容大于70字时,即为长短信长短信计费按66个字数计费为一条短信,最长不超过300字 Phones String 是 15322063938 手机号码,用“;”(分号)分隔,最后一个不带“;”(分号) PostFixNum int 否 1234 扩展号码。必须是数字,如无需扩展此处为空即可(注:首先在不扩展的情况下测试看看手机收到的106号码的是多少位,如果是20位了这里扩展没用,工信部标准最大长度是20位。PostFixNum = 20 -(在不扩展的情况 手机收到的号码长度) SendDate String 否 2016-1-1 定时发送的日期,立即发送可以不输入或者为空 SendTime String 否 15:00:00 定时发送的时间,立即发送可以不输入或者为空 ReturnXJ int 否 1 返回值格式 默认XML格式 如果需要JSON格式 该值填写 “1” 2)举例: http://www.lanz.net.cn/LANZGateway/DirectSendSMSs.asp?UserID=993965&Account=admin&Password=555555&Content=test&Phones=1111111111 3)返回值: ErrorNum 0:短信成功, 其它:详见错误代码说明 JobID 分配的短信任务号 PhonesSend 服务器接收的有效手机号码数量 ErrPhones 服务器拒绝的短信,用”;”分隔 DeductionSMSs 扣费条数 XML: <?xml version="1.0" encoding="GB2312"?> <LANZ_ROOT> <ErrorNum>0</ErrorNum> <JobID>2321313130</JobID> <PhonesSend>98</PhonesSend> <ErrPhones>13855556666;13611112222</ErrPhones> <DeductionSMSs>1000</DeductionSMSs> </LANZ_ROOT> JSON: {"LANZ_ROOT":{"ErrorNum":"0","JobID":"2321313130","PhonesSend":"98","ErrPhones":"13855556666;13611112222","DeductionSMSs":"1000"}}
发送SMS短信(JSON) 转载的更多相关文章
- 装饰者模式的学习(c#) EF SaveChanges() 报错(转载) C# 四舍五入 保留两位小数(转载) DataGridView样式生成器使用说明 MSSQL如何将查询结果拼接成字符串 快递查询 C# 通过smtp直接发送邮件 C# 带参访问接口,WebClient方式 C# 发送手机短信 文件 日志 写入 与读取
装饰者模式的学习(c#) 案例转自https://www.cnblogs.com/stonefeng/p/5679638.html //主体基类 using System;using System.C ...
- 基于SMS短信平台给手机发送短信
JAVA发送手机短信,我知道的有三种方式,恰逢项目需求,自己整理了基于SMS的短信发送,其他两种这里就说说一下 使用webservice接口发送手机短信,这个可以使用sina提供的webservice ...
- java中用中国网建提供的SMS短信平台发送短信
接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...
- 中国网建SMS短信接口调用(java发送和接收手机短信)
1.先注册账号,一定要填写好签名格式.不填会返回-51错误. 代码信息接口详细==>http://sms.webchinese.cn/api.shtml . 2.测试代码 package ...
- 四:java调接口实现发送手机短信验证码功能
1.点击获取验证码之前的样式: 2.输入正确的手机号后点击获取验证码之后的样式: 3.如果手机号已经被注册的样式: 4.如果一个手机号一天发送超过3次就提示不能发送: 二:前台的注册页面的代码:reg ...
- Java通过SMS短信平台实现发短信功能
在项目中使用过发短信的功能,但那个由于公司内部的限制很麻烦,今天在网上找到一个简单的,闲来无事就把它记录如下: 本程序是通过使用中国网建提供的SMS短信平台实现的(该平台目前为注册用户提供5条免费短信 ...
- Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用
近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限, ...
- SNF开发平台WinForm之十二-发送手机短信功能调用-金笛-SNF快速开发平台3.3-Spring.Net.Framework
1.调用前组装参数 2.调用发送信息服务脚本 .调用前组装参数: BaseSendTaskEntity entity = new BaseSendTaskEntity(); entity.Mess ...
- 【C#】C# 实现发送手机短信
现在很多网站都是短信发送的功能,怎么实现的呢.对于个人站长来说的话,通过使用SMS短信通API接口相对比较划算和简单.那怎么实现呢,步骤如下: 1. 从网上(http://sms.webchinese ...
随机推荐
- 把DataTable中的数据拼接成XML时遇到的问题
错误信息:System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Serve ...
- C#多线程 线程池
实例1:直接看看微软提供的代码 using System; using System.Threading; public class Example { public static void Main ...
- 使用urllib编写python爬虫
新版python中,urllib和urllib2合并了,统一为urllib (1)简单爬取网页 import urllib content = urllib.request.urlopen(req). ...
- Java 并发和多线程(三) 多线程的代价 [转]
原文链接:http://tutorials.jenkov.com/java-concurrency/costs.html 作者:Jakob Jenkov 翻译:古圣昌 校对:欧振 ...
- 14072202(带IK的Recoil)
[目标] 带IK的Recoil [思路] 1 继承于USkelControlLimb和UGameSkelCtrl_Recoil 2 效果对比 以这个骨骼为例 Recoil Limb 可见,Recoi ...
- 使用Settings.settings存储用户的个性化配置
1.在vs中设计要存储的字段,如:zbl,注意范围选择用户 读取: var aa = Properties.Settings.Default.zbl; 写入: Properties.Settings. ...
- C#泛型List的用法
C#泛型List的用法 来源:C#学习 发布时间:2014/1/4 一.List<T>命名空间: System.Collections.Generic(程序集:mscorlib) 二 ...
- Spark随笔(一):Spark的综合认识
一.Spark与Hadoop的关系 Spark和Hadoop只是共用了底层的MapReduce编程模型,即它们均是基于MapReduce思想所开发的分布式数据处理系统. Hadoop采用MapRedu ...
- windows定时执行百度新闻爬虫
想要做个新闻文本识别分类的项目,就先写了个爬取百度新闻的爬虫. 环境:win7 32 bit python3.4 若干第三方库 可以实现的功能:定期按照百度新闻的分类抓取新闻的标题,所属类别及文本内容 ...
- Linux线程-创建
Linux的线程实现是在内核以外来实现的,内核本身并不提供线程创建.但是内核为提供线程[也就是轻量级进程]提供了两个系统调用__clone()和fork (),这两个系统调用都为准备一些参数,最终都用 ...