原标题:java调用短信接口代码

短信接口被广泛应用在网站、app应用以及软件系统中,如用户注册、密码找回、会员服务、系统消息通知等应用场景,那么如何调用短信接口呢?下面以java开发语言为例,为大家分享想调用短信接口的代码。

这里就以调用动力思维乐信短信接口为例,在分享代码之前,大家需要先了解下乐信短信接口API文档(http://www.lx598.com/apitext.html),以及乐信短信接口接入指南(http://www.lx598.com/jrzn.html)。

下面是具体的java调用短信接口代码示例(完整代码请点击下载,http://www.lx598.com/api/sdk2.0_java.zip):

/**

* 用来格式化seed参数

*/

private static final String dateFormatStr="yyyyMMddHHmmss";

public static void main(String[] args) {

//输出发送结果

System.out.println(LxSdkImpl.sendSms("accName", "accPwd", "mobies", "content",""));

//输出查询报告结果

System.out.println(LxSdkImpl.qryReport("accName", "accPwd"));

//输出查询余额结果

System.out.println(LxSdkImpl.qryBalance("accName", "accPwd"));

//输出查询上行短信的结果

System.out.println(LxSdkImpl.receiveSms("accName", "accPwd"));

}

/**

* 发送短信

* @param accName 用户名

* @param accPwd 密码

* @param seed 当前时间 格式:YYYYMMDD HHMISS 例如:20130806102030

* @param aimcodes 手机号多个手机号之间英文半角逗号隔开

* @param content 内容后加签名

* @param schTime 定时时间格式如:2010-01-01 08:00:00

* @return 服务端返回的结果 ok:业务id 或者 错误代码

*/

public static String sendSms(String accName,String accPwd,String mobies,String content,String schTime){

StringBuffer sb = new StringBuffer("http://sdk.lx198.com/sdk/send2?");

try {

String seed=new SimpleDateFormat(dateFormatStr).format(new Date());

sb.append("&accName="+accName);

sb.append("&seed="+seed);

sb.append("&accPwd="+MD5.getMd5String(MD5.getMd5String(accPwd)+seed));

sb.append("&aimcodes="+mobies);

sb.append("&schTime="+URLEncoder.encode(schTime,"UTF-8")); //空格标点符号做encode转换

sb.append("&content="+URLEncoder.encode(content,"UTF-8")); //中文做encode转换

URL url = new URL(sb.toString());

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("POST");

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

return in.readLine();

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

/**

* 查询余额

* @param accName 用户名

* @param accPwd 原始密码

* @param seed 当前时间 格式:YYYYMMDD HHMISS 例如:20130806102030

* @return 服务端返回的结果 ok:业务id 或者 错误代码

*/

public static String qryBalance(String accName,String accPwd){

StringBuffer sb = new StringBuffer("http://sdk.lx198.com/sdk/qryBalance2?");

try {

String seed=new SimpleDateFormat(dateFormatStr).format(new Date());

sb.append("&accName="+accName);

sb.append("&seed="+seed);

sb.append("&accPwd="+MD5.getMd5String(MD5.getMd5String(accPwd)+seed));

URL url = new URL(sb.toString());

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("POST");

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

return in.readLine();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return null;

}

/**

* 查询回执报告

* @param accName 用户名

* @param accPwd 原始密码

* @param seed 当前时间 格式:YYYYMMDD HHMISS 例如:20130806102030

* @return 返回的查询报告结果 格式为:业务id,手机号,状态;业务id,手机号,状态 状态1表示成功;0表示失败

*/

public static String qryReport(String accName,String accPwd){

StringBuffer sb = new StringBuffer("http://sdk.lx198.com/sdk/qryReport2?");

try {

String seed=new SimpleDateFormat(dateFormatStr).format(new Date());

sb.append("&accName="+accName);

sb.append("&seed="+seed);

sb.append("&accPwd="+MD5.getMd5String(MD5.getMd5String(accPwd)+seed));

URL url = new URL(sb.toString());

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("POST");

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

return in.readLine();

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

/**

* 查询上行短信

* @param accName 用户名

* @param accPwd 密码

* @param seed 当前时间 格式:YYYYMMDD HHMISS 例如:20130806102030

* @return 返回的上行短信信息格式为:签名$$上行手机号$$上行内容$$上行时间####签名$$上行手机号$$上行内容$$上行时间

*/

public static String receiveSms(String accName,String accPwd){

StringBuffer sb = new StringBuffer("http://sdk.lx198.com/sdk/receiveSms2?");

try {

String seed=new SimpleDateFormat(dateFormatStr).format(new Date());

sb.append("&accName="+accName);

sb.append("&seed="+seed);

sb.append("&accPwd="+MD5.getMd5String(MD5.getMd5String(accPwd)+seed));

URL url = new URL(sb.toString());

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("POST");

BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));

return in.readLine();

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

本文来源:http://www.lx598.com/hangyedongtai/996.html返回搜狐,查看更多

责任编辑:

java短信接口_java调用短信接口代码相关推荐

  1. java调用微信红包接口_java调用微信现金红包接口的心得与体会

    这几天看了下以前写的有关微信支付的博客,看的人仍是挺多的,看了下留言不知道是由于博客写的不够细仍是什么状况,大多都找我要源码,我以为吧程序员仍是须要有这么一个思考的过程,所以没直接给源码,俗话说&qu ...

  2. java异步调用第三方接口_Java调用第三方系统接口获取数据

    1,调取接口代码 RestTemplate restTemplate=new RestTemplate();HttpHeaders headers=new HttpHeaders();MultiVal ...

  3. Java spring boot 阿里云调用人脸识别接口,本地sdk上传到阿里云调用api

    Java spring boot 阿里云调用人脸识别接口 没有写测试类,工具类如下,有access_key_id和access_key_secret传参调用就可使用 代码如下: pom.xml依赖 & ...

  4. java 登陆短信验证码_Java实现短信验证码

    原标题:Java实现短信验证码 声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. 短信验证码 短信验证码都是调 ...

  5. java 限制发送频率_java发送短信如何限制发送频率例子代码

    本篇文章主要是详细介绍了java发送短信系列之怎么限制发送频率示例解析,在此为大家介绍一下怎么样限制向同一个用户(根据手机号和ip)发送短信的频率. 1.使用session 要是web程序那在sess ...

  6. java 限制发送频率_java发送短信系列之限制日发送次数

    在前两篇文章中, 我们实现了同步/异步发送短信以及限制发送短信频率.这一篇, 我们介绍一下限制每日向同一个用户(根据手机号和ip判断)发送短信的次数 1.数据表结构 由于需要记录整天的发送记录, 因此 ...

  7. Java短信频率_java发送短信系列之限制发送频率

    本篇是发送短信的第二部分, 这里我们介绍一下如何限制向同一个用户(根据手机号和ip)发送短信的频率. 1.使用session 如果是web程序, 那么在session中记录上次发送的时间也可以, 但是 ...

  8. PHP云软件短信接口,php调用云片网接口发送短信的实现方法

    php调用云片网接口发送短信的实现方法 云片网发送短信 /** * [SendSms description] * @param [string] $tpl_content [发送的短信内容] * @ ...

  9. 环信 java接口实例_java调用环信接口

    现在需要实现app中消息禁言功能?需要调用环信的接口,已经有文档了,但是不知道怎么调用?不清楚怎么将环信的接口继承到java代码中?请大家多多指教. 添加禁言 将一个用户禁言.用户被禁言后,将无法在群 ...

最新文章

  1. 高级mysql优化知识_MySQL高级第三篇(索引优化分析)
  2. JavaScript闭包函数的理解与使用
  3. JS事件委托的概念和作用
  4. swift3.0 post Json解析
  5. java二维数组 内存分配_java中二维数组内存分配
  6. java接口构造函数_Java8自定义函数式编程接口和便捷的引用类的构造器及方法
  7. 就地链表反转_数据结构与算法系列之链表操作全集(二)(GO)
  8. 安卓应用性能调试和优化经验分享
  9. python 2.7安装pandas失败
  10. centerOS 安装redis
  11. Django之DRF自定义action
  12. 解决VMware中虚拟机(centos7)无法上网的一种方法
  13. UDP视频流MP2T的分析方法
  14. 小狗钱钱 的读书笔记
  15. 思科模拟器配置 DHCP中继
  16. android自定义3d饼图,Android使用j4lChartAndroid插件绘制3D饼图
  17. php exit 和die,PHP中的die()和exit()有什么区别?
  18. [转]Android 开源项目分类汇总
  19. 公用Foot和友情链接模块代码模板
  20. 计算机无法识别u盘,电脑无法识别u盘无法读取u盘的解决方法

热门文章

  1. 软件架构模式 mark Richards - 读后总结 2 事件驱动架构
  2. 杭州的旅游景点有哪些传说的民间故事
  3. 散列算法比较:MD5、SHA1、SHA256有哪些区别
  4. 校园二手平台使用说明
  5. html颜色主题,16 种更好看的 WEB 默认标准色 colors.css
  6. CTO,技术总监和技术经理有啥区别?
  7. RandLA-Net Pytorch版本: module not found error: no module named ‘torch_points_ kernels. points_ cpu‘
  8. python 使用h5py 中遇到的问题
  9. java 获取集合对象中某个属性不为空的数据集合 lambda获取【拉姆达表达式 】
  10. 【原生微信小程序】 组件的使用,权限弹窗