重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这期内容当中小编将会给大家带来有关Java中如何使用云片API实现发送短信验证码,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
成都创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为铁西企业提供专业的成都网站制作、网站建设,铁西网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
获取APIKEY
云片网提供了完整的SDK和API,可以帮助开发者快速完成业务开发。
在开始Coding前,需要先获取APIKEY,如下所示。
获取APIKEY
点击眼睛按钮后,输入验证码,就可以查看APIKEY了。
这里需要说明的是,APIKEY特别重要,一定要保护好它,避免泄露。云片这边提供了几重保护机制,例如验证、敏感处理、子账号独立APIKEY等,看得出来他们的安全意识还是挺不错的。
开始Coding
有了APIKEY,就可以直接开始Coding了。
最主要的接口就是这三个,单条发送接口、批量发送接口、批量个性化发送接口。搞清楚这三个接口后,其它的开发基本就是信手拈来了。
单条发送接口
* 单条短信发送,智能匹配短信模板 * * @param apikey 成功注册后登录云片官网,进入后台可查看 * @param text 需要使用已审核通过的模板或者默认模板 * @param mobile 接收的手机号,仅支持单号码发送 * @return json格式字符串 */ public static String singleSend(String apikey, String text, String mobile) { Mapparams = new HashMap ();//请求参数集合 params.put("apikey", apikey); params.put("text", text); params.put("mobile", mobile); return post("https://sms.yunpian.com/v2/sms/single_send.json", params);//请自行使用post方式请求,可使用Apache HttpClient }
这其中,APIKEY是从云片后台获得的。
例如我要给1888888888这个号码发送,代码如下:
String apikey = fx33mio3561dah44jdk748vz9dkfjkd373zdfg28df43dfhjadj; String text = "[云片网] 您的短信验证码是 1234"; String mobile = 18888888888; testSendSms(apikey, text, mobile);
这样一条短信就发送出去了。详细的介绍可以看这里。
批量发送接口
也可以给多个手机号发送相同内容的短信,代码如下:
/** * 批量发送短信,相同内容多个号码,智能匹配短信模板 * * @param apikey 成功注册后登录云片官网,进入后台可查看 * @param text 需要使用已审核通过的模板或者默认模板 * @param mobile 接收的手机号,多个手机号用英文逗号隔开 * @return json格式字符串 */ public static String batchSend(String apikey, String text, String mobile) { Mapparams = new HashMap ();//请求参数集合 params.put("apikey", apikey); params.put("text", text); params.put("mobile", mobile); return post("https://sms.yunpian.com/v2/sms/batch_send.json", params);//请自行使用post方式请求,可使用Apache HttpClient }
多个手机号之间使用逗号分隔,mobile可以这样赋值
String mobile = "1888888888, 1234567890, 9876543210"
详细的说明可以参看这里。
批量个性化发送接口
很多时候,我们遇到的需求没有那么简单,经常要给不同的手机号发送不同的内容,而云片也提供了对应的API。
/** * 批量个性化发送 */ public static String multiSend() throws UnsupportedEncodingException { Mapparams = new HashMap ();//请求参数集合 params.put("apikey", "your apikey"); params.put("text", java.net.URLEncoder.encode("【云片网】您的验证码是1234", "UTF-8") + "," + java.net.URLEncoder.encode("【云片网】您的登录码是8888", "UTF-8")); params.put("mobile", "13812345678,18888888888"); return post("https://sms.yunpian.com/v2/sms/multi_send.json", params);//请自行使用post方式请求,可使用Apache HttpClient }
上面这段代码的结果就是第一条短信"【云片网】您的验证码是1234"发给了13812345678,第二条短信"【云片网】您的登录码是8888"发给了18888888888,当然这样的实现方式还是看起来很蠢,不过不用担心,云片网还提供了变量模板,只要替换模板中对应的变量部分,就可以轻松实现给多个号码发送不同的短信内容,关于变量模板,以后可以再多聊聊,反正他完美执行了设计模式中OCP原则,简直经典。
上述就是小编为大家分享的Java中如何使用云片API实现发送短信验证码了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。