您的位置:

java短信接口,java短信接口开发实例

本文目录一览:

手机短信验证码java接口怎么写

这个首先你要确定一下短信平台,他们会给你提供短信实现的接口文档。

比如:

public static String doPost(String reqUrl, Map parameters, String recvEncoding)

{

HttpURLConnection url_con = null;

String responseContent = null;

try

{

StringBuffer params = new StringBuffer();

Iterator iter = parameters.entrySet().iterator();

while (iter

.hasNext())

{

Map.Entry element = (Map.Entry)iter.next();

params.append(element.getKey().toString());

params.append("=");

params.append(URLEncoder.encode(element.getValue().toString(),

requestEncoding));

params.append("");

}

if (params.length() 0)

{

params = params.deleteCharAt(params.length() - 1);

}

URL url = new URL(reqUrl);

url_con = (HttpURLConnection)url.openConnection();

url_con.setRequestMethod("POST");

System.setProperty("sun.net.client.defaultConnectTimeout",

String.valueOf(connectTimeOut));

System.setProperty("sun.net.client.defaultReadTimeout",

String.valueOf(readTimeOut));

url_con.setDoOutput(true);

byte[] b = params.toString().getBytes();

url_con.getOutputStream().write(b, 0, b.length);

url_con.getOutputStream().flush();

url_con.getOutputStream().close();

InputStream in = url_con.getInputStream();

BufferedReader rd = new BufferedReader(

new InputStreamReader(in,

recvEncoding));

String tempLine = rd.readLine();

StringBuffer tempStr = new StringBuffer();

String crlf = System.getProperty("line.separator");

while (tempLine != null)

{

tempStr.append(tempLine);

tempStr.append(crlf);

tempLine = rd.readLine();

}

responseContent = tempStr.toString();

rd.close();

in.close();

}

catch (IOException localIOException)

{

}

finally

{

if (url_con != null)

{

url_con.disconnect();

}

}

return responseContent;

}

public static String sendTelCode(String mobile,String telcode){

MapString ,String map = new HashMapString ,String();

map.put("account", "Babo");

map.put("mobile", mobile);

map.put("pswd", "D3dddD");

try {

map.put("msg", java.net.URLEncoder.encode("您的验证码是"+telcode+",若非本人操作请忽略","utf-8"));

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

String getValue = doPost("", map, "UTF-8");

System.out.println(getValue);

return getValue;

}

中国移动短信接口java怎么调用

java调用运营商的接口参考:

%@page contentType="text/html" pageEncoding="UTF-8"%

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

""

html

head

meta http-equiv="Content-Type" content="text/html; charset=UTF-8"

titleJSP Page/title

/head

body

h1

%

String PostData = "sname=kwsmspwd=kwsmscorpid=sprdid=101sdst=13910862579smsg="+java.net.URLEncoder.encode("短信内容","utf-8");

//out.println(PostData);

String ret = cn.umob.sms.Send.SMS(PostData, "");

out.println(ret);

//请自己反序列化返回的字符串并实现自己的逻辑

%

/h1

/body

/html

java短信接口发送的这三种短信,你收到过几种

不同的行业应用java短信接口的用途不一样,但大多数都是用于传递消息、加强服务、提高安全性,因而一般情况下java短信接口会发送通知类短信、问候类短信、营销类短信及广告类短信,具体的让我们一起来了解下吧。

1.通知型短信

应用java短信接口发送通知类短信的行业很多,比如教育行业会给学生发送放假通知、开学通知或者考试通知等;一些人数多的大型企业常常要应用java短信接口给员工发送开会通知、内部业绩通报、内部员工激励等信息;快递物流行业则需要发送快递领取通知短信等,此外一些婚恋机构平台或者某个家庭也可以应用java短信接口发送婚礼通知短信,比如:我亲爱的同学、朋友们,本人郑重决定于XX日终结单身生活,迈向婚姻的殿堂,在那激动人心的时刻里,希望你能来见证,为我举杯祝福!地址XX!可别迟到哦!

2.问候型短信

这类短信往往是企业出于服务的目的而发送的,为的是维护和客户之间的关系,加强跟客户之间的黏性,因而每到了过年过节或者特殊时间的时候,企业就会应用java短信接口给用户发送祝福问候类的短信,以便让用户可以想起自己,借此加深用户对企业的忠诚度还有依赖性。这类短信比较柔和,没有很强的目的性,所以比较容易让用户接受。

3.促销型短信

这是平时市民接收很多的一种短信类型了,这种短信一般都是企业出于营销推广的目的发送的,为的是刺激客户下单,或者让客户增加重复购买的的机率,因为java短信接口发送的促销短信正好是很多市民需要的,因而效果非常好,很多企业也因此收获了不少回头客。

java 通用短信接口思路

这个也没有什么复杂的。各个接口提供的API功能一致,只是程序上要设计的合理;

程序上对需要的短信发送功能进行封装,就是说,在平台上只有平台定义的发送方法或者类,那如何把这些不同的接口API集合起来,那是否可以设计成可配置的功能,比如你要变更短信猫的接口,只是简单的把短信猫所提供的JAR导入的到平台,把需要的功能方法(发送、接收、回执等)用可变的配置机制,把相关的函数方法配置到文件中。这样不就可以了;

java程序如何对接巴卜短信接口

他们的接口不限制编程语言的,无论你是JAVA、C、VB、.NET等都可以实现对接的。

短信接口是什么东西?

我来给你介绍一下短信接口就是短信SDK、API,以下就是我编辑的java短信接口,已经测试请求步骤。

单条短信接口:此接口为客户发送单条短信提供支持

安全接口

安全接口的数据传输经过加密、压缩,能够保障数据传输安全,如果有安全性要求,建议选用安全接口;

安全接口所接收、响应的数据,均经过AES加密,在数据加密前允许使用gzip算法压缩数据。

数据加密方式:AES;

加密算法:AES/ECB/PKCS5Padding;

压缩算法:gzip 【建议进行数据压缩】;

请求

链接

参数

参数类型传输方式描述appIdStringhttp头信息传输用户Appid(必填)gzipStringhttp头信息传输是否启用GZIP压缩【非必填】

on :是encodeStringhttp头信息传输字符集【非必填】

如果不填,默认UTF-8编码集,此字符集必须与实际传输数据字符集相同mobileString1、将所有参数拼装成json串后;

2、将json串进行AES加密;

3、加密后的byte数组通过post直接传输;手机号(必填)contentString短信内容(必填)timerTimeString定时发送时间(选填,定时时间在90天之内)

格式:yyyy-MM-dd HH:mm:ss

如果不填,则为即时发送customSmsIdString自定义消息ID(选填)

最长32位extendedCodeString扩展码(选填)

最长支持12位,如果最终号码长度超长,会截取扩展码,请根据我司建议位数提交requestTimelong请求时间(必填)

格式:时间毫秒数

安全验证字段,防止同一个请求重复提交;

短信平台根据requestTime与requestValidPeriod共同判断请求是否有效,针对无效的请求,短信平台响应错误;

判断方法:请求时间 + 请求有效时间 当前时间 ? 有效 : 无效;requestValidPeriodint请求有效时间(必填)[单位:秒]

描述同上示例

1、将参数拼装成json串

{

"mobile":"15538850000",

"content":"【清华大学】 i love you ! ",

"timerTime":"2017-03-15 12:00:00",

"extendedCode":"112",

"customSmsId":"2017010709302911",

"requestTime":1490588340964,

"requestValidPeriod":30

}

2、将json串转化为UTF-8编码的byte数组

Byte[] data = json.toBytes["UTF-8"];

3、如果需要gzip压缩,则压缩数据,并放入标示,[非必需步骤]

data =gzip.com (data);

http.setHead("gzip","on");

4、通过AES加密

data = AES. encryption (secretKey,data,算法);

5、将appId放入http head

http.setHead("appId",appId);

6、通过http post方法传输

Byte[] response = http.post(url,data);

响应

参数

参数类型传输方式描述resultStringhttp头信息传输请求状态码,详见本文档《接口状态码表》

当result不是SUCCESS时,不会响应下面参数数据。mobileString传输过来的数据是加密后的byte数组手机号smsIdString消息IDcustomSmsIdString客户自定义SMSID示例

1、从http头信息获取请求状态,如果code不是SUCCESS,不用进行下面几步

String code = http.getHead("reasult");

2、从响应流获取响应数据,并解密

Byte[] data = Response.getdata();

data = AES. decryption (secretKey, data,算法);

3、如果请求信息中有压缩标示,返回的数据也是压缩过的,需要解压缩;[非必须步骤]

data = GZIP.dcom(data);

4、将数据转换成JSON串

String json = new String(data,"UTF-8");

{

"mobile":"15538850000",

"smsId":"20170392833833891100",

"customSmsId":"20170392833833891100"

接入指导

步骤一:登录亿美软通官网

步骤二:注册并获取客户标识(AppId)和客户密钥(secretKey)账号

步骤三:参照接口文档和DEMO,对接接口并测试

步骤四:测试通过,正式上线,充值使用