Java使用云片API发送短信验证码

发布时间 - 2026-01-10 22:56:57    点击率:

下面开始介绍的是如何利用机器完成批量操作,将短信业务自动化。

获取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) {
  Map<String, String> params = new HashMap<String, String>();//请求参数集合
  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 = fx33mio3561dah34jdk748vz9dkfjkd373zdfg28df43dfhjadj;
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) {
  Map<String, String> params = new HashMap<String, String>();//请求参数集合
  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 {
  Map<String, String> params = new HashMap<String, String>();//请求参数集合
  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实现短信验证码,以后还会写一篇PHP实现短信验证码的,如果等不及了,云片的文档中也有对PHP的说明,可以先睹为快。


# java发送短信验证码  # Java开发完整短信验证码功能的全过程  # Java实现SMS短信通发送手机验证码案例讲解  # java实现短信验证码5分钟有效时间  # Java调取创蓝253短信验证码的实现代码  # java短信验证码获取次数限制实例  # Java实现发送短信验证码功能  # Java实现短信验证码和国际短信群发功能的示例  # Java实现用户短信验证码登录功能实例代码  # 您的  # 多个  # 验证码  # 的是  # 就可以  # 单条  # 给了  # 要给  # 这三个  # 请自行  # 官网  # 他们的  # 也有  # 还会  # 信手拈来  # 是从  # 这段  # 英文  # 看得  # 先睹为快 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  如何在阿里云虚拟服务器快速搭建网站?  Laravel如何使用Telescope进行调试?(安装和使用教程)  Bootstrap整体框架之CSS12栅格系统  如何在万网ECS上快速搭建专属网站?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何用美橙互联一键搭建多站合一网站?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  *服务器网站为何频现安全漏洞?  Laravel怎么集成Vue.js_Laravel Mix配置Vue开发环境  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  Laravel PHP版本要求一览_Laravel各版本环境要求对照  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  JavaScript如何实现音频处理_Web Audio API如何工作?  Laravel如何使用查询构建器?(Query Builder高级用法)  如何用PHP快速搭建高效网站?分步指南  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  linux top下的 minerd 木马清除方法  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  Laravel如何创建自定义中间件?(Middleware代码示例)  iOS发送验证码倒计时应用  EditPlus中的正则表达式实战(5)  微信小程序 scroll-view组件实现列表页实例代码  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  Linux系统命令中tree命令详解  如何在万网利用已有域名快速建站?  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  南京网站制作费用,南京远驱官方网站?  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Laravel如何实现本地化和多语言支持?(i18n教程)  如何用已有域名快速搭建网站?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  如何在万网开始建站?分步指南解析  郑州企业网站制作公司,郑州招聘网站有哪些?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  如何在建站主机中优化服务器配置?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  详解vue.js组件化开发实践  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  js实现点击每个li节点,都弹出其文本值及修改  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  湖南网站制作公司,湖南上善若水科技有限公司做什么的?