短信工具类——mo信通

1.短信平台的选取

采用的是mo信通,网址:https://www.molink.cn/comm/api.html

2 请求地址

http://IP:端口/sms/httpBatchSend

或:https://IP:端口/sms/httpBatchSend

提交方式:POST

编码格式:utf-8

Content-Type:application/x-www-form-urlencoded;charset=utf-8

注:

短信群发时,单次提交号码个数不能超过5000个(号码过多时,请求报文大小会变大,请注意设置请求和响应超时时间,建议>10s)

此地址,pwd是加密码(加密码获取方式:登录web平台、个人信息中查看)

3 输入参数

序号 参数 是否必须 描述
1 username 必须 帐号
2 pwd 必须 加密码(从web平台、个人信息中获取,密码变更时,加密码也会变更); ts参数为空时填加密码,ts参数不为空时填md5(账号+加密码+时间戳),对账号密码时间戳拼接的字符串进行md5加密,32小写
3 mobile 必须 合法手机号码(若多个手机号码,手机号间用英文逗号(,)分隔),群发时,号码不能超过1000个
4 content 必须 短信内容,短信发送字数不能超过300字,长短信将按分配给账号的产品的计费规则,以多条计费。
5 ts 可选 时间戳,格式yyyyMMddHHmmss

4 响应格式(JSON文本)

失败格式:

                                    {
                                    "code":"105",
                                    "msg": "请求参数错误(必填、格式)"
                                    }
                                
                            

成功格式:

                                    {
                                    "code":"0",
                                    "msg": "提交成功",
                                    "taskid": "11057292"
                                    }
                                
                            

重要说明: code表示响应状态码(0表示成功,其他表示失败),msg表示响应信息,taskid表示任务编号(可用于查询网关返回状态)

5pom依赖

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.4</version>
</dependency>

6短信工具类


import java.io.IOException;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;


/**
 * 短信 工具类
 *
 * @author qsong
 * @since 2019-07-08
 */
public class SMSUtil {

    public static void sendMessage(String mobile, String content) {
        HttpClient client = new HttpClient();
        PostMethod method = new PostMethod("http://api.uoleem.com.cn/sms/httpBatchSend");
        client.getParams().setContentCharset("UTF-8");
        method.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
        NameValuePair[] data = {//提交短信
                new NameValuePair("username", ""),//账户
                new NameValuePair("pwd", ""),//密码
                new NameValuePair("mobile", mobile),//手机号
                new NameValuePair("content", content),//模版内容
        };
        method.setRequestBody(data);
        try {
            client.executeMethod(method);
            System.out.println(method.getResponseBodyAsString());
        } catch (HttpException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }


//    public static void main(String[] args) {
//        sendMessage("18112303334", "您好!您已成功注册为我们的一员,您的租户账号为1,登录名2");
//    }
}

上一篇:使用commons-fileupload和commons-io上传文件和接收字段和参数(解决参数乱码)


下一篇:Spring Cloud微服务实战 打造企业级优惠券系统 2-2 maven的相关特性