使用Java实现短信发送

java使用阿里云平台实现发送短信验证码功能 在我们生活中,使用的各种各样的网站、APP在登录、注册、支付、修改密码等需要进行安全验证的地方都要进行短信的验证。 一、实现思路: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 二、流程 客户输入手机号后,点击发送验证码,向服务器发送请求 服务器接收到请求后,获取到客户的手机号,并随机生成验证码,将验证码存储起来,有了手机号和验证码,向运营商发起发送短信的请求 运营商向客户手机发送短信 客户将收到接收到的验证码填写之后,点击提交,向服务器发起请求,判断发送的和客户输入的是否相同。 阅读详情

 使用Java实现短信发送

1.在中国网建平台注册账号

注册完成后会免费赠送5条短信和3条彩信

http://sms.webchinese.com.cn/reg.shtml

2.建立JAVA工程,添加如下三个jar包,可直接点击下载

commons-codec-1.4

commons-httpclient-3.1

commons-logging-1.1.1


3.代码

import java.io.UnsupportedEncodingException;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;

public class SendMsg_webchinese {

public static void main(String[] args)throws Exception
{

HttpClient client = new HttpClient();
PostMethod post = new PostMethod("http://gbk.sms.webchinese.cn"); 
post.addRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=gbk");//在头文件中设置转码
NameValuePair[] data ={ new NameValuePair("Uid", "本站用户名"),new NameValuePair("Key", "接口安全秘钥"),new NameValuePair("smsMob","手机号码"),new NameValuePair("smsText","验证码:8888")};
post.setRequestBody(data);

client.executeMethod(post);
Header[] headers = post.getResponseHeaders();
int statusCode = post.getStatusCode();
System.out.println("statusCode:"+statusCode);
for(Header h : headers)
{
System.out.println(h.toString());
}
String result = new String(post.getResponseBodyAsString().getBytes("gbk")); 
System.out.println(result); //打印返回消息状态


post.releaseConnection();

}

}
4.说明:

GBK编码发送接口地址:
http://gbk.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全秘钥&smsMob=手机号码&smsText=验证码:8888 
UTF-8编码发送接口地址:
http://utf8.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全秘钥&smsMob=手机号码&smsText=验证码:8888
获取短信数量接口地址(UTF8):
http://sms.webchinese.cn/web_api/SMS/?Action=SMS_Num&Uid=本站用户名&Key=接口安全秘钥
获取短信数量接口地址(GBK):
http://sms.webchinese.cn/web_api/SMS/GBK/?Action=SMS_Num&Uid=本站用户名&Key=接口安全秘钥

提示:HTTP调用URL接口时, 参数值必须URL编码后再调用

参数变量说明
Gbk编码Urlhttp://gbk.sms.webchinese.cn/
Utf-8编码Urlhttp://utf8.sms.webchinese.cn/
Uid本站用户名(如您无本站用户名请先注册)[免费注册]
Key注册时填写的接口秘钥(可到用户平台修改接口秘钥)[立刻修改]
如需要加密参数,请把Key变量名改成KeyMD5,
KeyMD5=接口秘钥32位MD5加密,大写。
smsMob目的手机号码(多个手机号请用半角逗号隔开)
smsText短信内容,最多支持400个字,普通短信70个字/条,长短信64个字/条计费

多个手机号请用半角,隔开
如:13888888886,13888888887,1388888888 一次最多对100个手机发送
短信内容支持长短信,最多400字,普通短信70个字/条含签名,长短信64字/条计费

短信发送后返回值说 明
-1没有该用户账户
-2接口密钥不正确 [查看密钥]
不是账户登陆密码
-21MD5接口密钥加密不正确
-3短信数量不足
-11该用户被禁用
-14短信内容出现非法字符
-4手机号格式不正确
-41手机号码为空
-42短信内容为空
-51短信签名格式不正确
接口签名格式为:【签名内容】
-6IP限制
大于0短信发送数量


相关推荐

《计算机网络》复试问答题总结

DNS 是一个联机分布式数据库系统,负责主机名和 IP 地址之间的转换,需要进行域名查询的机器主动发起域名解析请求,域名服务器则随时准备做出响应。域名服务器的数据库中存放着它所管辖范围的主机名和 IP 地址之间的映射表,域名服务器之间又可以相互联络和协作,以便分布在 Internet 各个域名服务器数据库中的域名都能被有效地搜索,从而实现主机名与 IP 地址的映射。为了提高解析效率,使用了域名缓存技术。在服务器、主机中设置一个专用的内存缓冲区。服务器用来存放近期解析过的域名及其对应的 IP 地址的映射。

weixin_45971154的博客 2029

Java发送手机短信

该程序我使用的是中国网建SMS短信通来实现的,中国网建地址:http://sms.webchinese.cn/default.shtml 具体使用步骤: 1、注册一个账户 2、获取到key 3、查看相关的api,他提供发送短信的方式有gbk和utf8编码的方式 GBK与UTF-8的请求地址 GBK编码发送接口地址: http://gbk.sms.webchinese.

小菜鸟笔记 2263

LTspice introduction - 2 LTspice的界面

LTspice的界面主要有两个:Schematic Capture和Waveform Viewer Schematic Capture 它主要是用来画电路图的,画完电路图之后,添加一些dot 命令同时选择一些仿真的参数,点击执行(Run)Waveform Viewer 如果你的仿真不是op point的话,一个都会打开它,在它里面你可以画图相应的图形。 有两种方式可以在Viewer

贾亮的专栏 3221

Java实现短信发送

首先,我们要实现Java短信发送功能需要去申请第三方短信接口,以阿里云为例 点击跳转 在API市场中找到短信验证码接口: 我们可以先选择免费试用来测试: 点击立刻购买后可前往控制台查看: OK,一切就绪后我们开始测试使用。 首先我们先回到商品详情页,在商品详情页下面,说明了这个接口的调用地址以及请求参数等: 接下来我们通过实例来调用接口进行测试: 1、加入相关依赖 具体可参考:相关依赖 2、创建HttpUtils.java类 HttpUtils.java类官方也已经帮我们封装好了,我们可以直接前往

qq_45004609的博客 1万+

告别手动复制粘贴:3种高效合并Excel表格的方法对比(含代码)

本文对比了VBA、Power Query和Python三种高效合并Excel表格的方法,并提供了可直接运行的代码。针对不同数据量、更新频率和技术背景,详细分析了各方案的优缺点与适用场景,帮助读者告别低效的手动操作,实现自动化数据整合。

weixin_29057237的博客 442

STC89C52RC单片机原理图详解

左侧A0和右侧B0为一 一对应的关系,左上角DIR为控制数据方向端口,如果DIR接高电平是将左侧数据A0~A8送到右侧B0~B8,如果DIR接低电平,是将右侧数据B0~B8送到左侧A0~A8,由于在电路板上LE始终与VCC连接,因此这里。74HC595是串行输入,并行输出的移位寄存器,可用3根线输入串行数据,8根线输出并行数据,多片级联后,可输出16位、24位、32位等,常用于I/O口扩展。由于数码管为共阴极,给数码管下面接口输入阳码时,LED才亮,但是直接将P0~P7的高电平输入到数码管时,

m0_50562428的博客 6万+

Java实现发送短信

使用Java发送验证码教程

码赛客1024的博客 1万+

EPLAN二次开发入门:Visual Studio 2019环境配置与插件调试实战

本文详细介绍了EPLAN二次开发入门的关键步骤,重点讲解如何在Visual Studio 2019中配置开发环境并进行插件调试。通过创建符合命名规范的项目、引用核心API库、实现插件接口以及使用附加进程调试等实战技巧,帮助电气工程师快速掌握EPLAN插件开发,提升自动化设计效率。

h6i7j8的博客 763

Java实现短信发送业务

Java对接阿里云短信SDK,实现发送短信功能

qq_45110186的博客 3839

基于 YOLO26 的车辆实时检测与计数系统

本文提出了一种基于YOLO26的车辆实时检测与计数系统。系统采用CSPDarknet53作为主干网络,结合特征金字塔和多尺度预测实现高精度车辆检测。通过DeepSORT算法进行目标跟踪,并统计车辆数量、行驶方向和交通流量。实验表明,该系统在保持实时性能的同时,检测精度达到92.3%,可有效应用于智能交通管理。系统采用Python实现,支持GPU加速,适用于多种交通场景下的车辆监测需求。

一键难忘的博客 907

三菱FX5U系列PLC与汇川IT6000系列触摸屏进行MODBUS TCP通信的具体方法

三菱FX5U系列PLC与汇川IT6000系列触摸屏进行MODBUS TCP通信的具体方法

Robot_PLC_HMI_Automation 6514

花了 44 大洋,我实现 Java 发送短信功能!

本篇为从 0 到 1 的一个,用 Java 对接腾讯短信发送功能的一篇流程文章。而标题中的 44 大洋则是用来购买短信套餐,当然如果你是首次使用腾讯云平台则可以享受【免费使用】这一功能(那,废话不多说,我们往下看对接步骤。

wdj_yyds的博客 1418

图像增强算法:基于Retinex的图像增强算法

该算法对图像的亮度和颜色进行分离处理,然后通过调整它们的比例来提高图像的质量。滤波后的图像将保留颜色信息,并减少图像中的噪声。接下来,Retinex算法使用一个高通滤波器对原始图像进行滤波处理,以增强图像中的亮度信息。通过使用Retinex增强算法,我们可以有效地提高图像的质量,增强图像中的细节和颜色信息。最后,Retinex算法通过将颜色恢复和亮度调整后的图像进行比例调整,以获得最终的增强图像。Retinex算法是一种常用的图像增强算法,它通过对图像的亮度和颜色进行调整,以提高图像的视觉质量。

XsiJava的博客 436

验证码如何使用Java程序实现短信发送

现在是什么软件和平台登录都需要绑定手机号码,然后通过的短信验证码进行验证手机号,那么软件平台是如何Java程序进行短信验证码自动触发发送的呢?今天给大家分享的是Java实现短信验证码发送功能。   实现Java验证码发送的第一步:选取可以使用的短信平台   这种平台的好处是可以测试,如果短信平台的短信通道特别慢,可以直接换其他平台,避免平台不行造成的返工。   有的平台是支持接口测试,...

短信接口_短信验证码_短信验证码接口 2470

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Java实现发送短信验证码和使用Redis限制发送次数功能的实现

本文介绍了如何使用Java语言实现发送短信验证码的功能,并结合Redis进行发送次数的限制。通过该功能,我们可以在用户注册、登录等场景下,保护用户账号安全,防止滥用和恶意攻击。在现代的应用程序中,为了保护用户账号的安全性,常常需要使用短信验证码来验证用户的手机号码。为了进一步增强安全性,我们可以结合Redis使用其强大的数据结构和原子操作,限制发送短信验证码的次数,以防止恶意的频繁请求和滥用。第一...

fastboot 1290

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

JAVA + 阿里云 实现单个短信发送 和 批量短信发送(直接拷贝就能使用)

JAVA + 阿里云 实现单个短信发送 和 批量短信发送

nonita的博客 3653

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

使用 Twilio API 发送短信、接收短信和验证 Webhook 签名(Java 实现)

使用 Twilio API 发送短信、接收短信和验证 Webhook 签名(Java 实现)

weixin_45428910的博客 1846

java使用短信平台_「短信支付平台」Java实现发送短信的例子 - 使用【SMS短信平台】 - seo实验室...

短信支付平台转自:https://blog.youkuaiyun.com/qq_26641781/article/details/78134241我这里用到的是中国网建提供的SMS短信平台,在实现发送短信之前,需要在SMS短信平台上申请账号,然后用这个账号给我们的手机发短信。这是SMS短信平台给出其接口的java调用,除此之外,还有ASP,C#,PHP等调用,详情请点击进入查看:import java.io...

weixin_39712016的博客 274

使用阿里大于平台发送短信验证码java代码实现

使用阿里大于平台发送短信验证码java代码实现 首先需要在阿里云平台找到阿里大于并使用公司相关信息进行平台注册。然后在应用管理-》应用列列表栏创建应用,应用名为短信的最前面中括号中内容,大于官方会给你提供一个appKey和AppSecret代码中会用到。  2.创建好应用后就需要在配置管理中添加对应的模板,企业用户默认会有一些模板,可以使用官方的,也可以自己创建。创建好之后需要记住模板

u010463032的博客 2958

Java使用阿里大鱼实现发送短信

获取 AccessKey ID 和 Access Key Secret 获取 签名名称 和 模版CODE 阿里云官网 如何使用? 1.首先导报 <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-s...

qq_43419627的博客 528

个人测试:在idea中使用阿里云实现短信发送(java)

发送成功。

qq_62824687的博客 681

Java中使用阿里云短信接口实现短信的发送与接收

使用layui模板直接使用ajax发送参数,参照了其他学习方法整理为自己小白使用的短信发送与接收小案例。

qq_30752079的博客 1686

JAVA:使用阿里云短信接口实现短信验证码的发送(详解)

一、上代码之前的准备工作 1、需要注册一个阿里云账号,进入阿里云 阿里云首页: https://www.aliyun.com/ 2、进入短信服务 3、获取Access_key和Access_secret 获取Access_key和Access_secret之后要好好保存 4、申请签名与模板 申请短信签名和模板需要几个小时,有的很快,稍微等待一下。 二、开始上代码 我是在maven项目...

╱/.独﹄無㈡oоΟ的博客 6417

Java实现发送短信的例子 - 使用【SMS短信平台】

转自: https://blog.youkuaiyun.com/qq_26641781/article/details/78134241   我这里用到的是中国网建提供的SMS短信平台,在实现发送短信之前,需要在SMS短信平台上申请账号,然后用这个账号给我们的手机发短信。 这是SMS短信平台给出其接口的java调用,除此之外,还有ASP,C#,PHP等调用,详情请点击进入查看: import jav...

hemeinvyiqiluoben的专栏 8878

使用java实现短信发送

导入pom依赖 &lt;dependency&gt; &lt;groupId&gt;commons-codec&lt;/groupId&gt; &lt;artifactId&gt;commons-codec&lt;/artifactId&gt; &lt;version&gt;1.4&lt;/version&gt; &

23号男人 476
上一篇: GWT编译中出现Invalid Character问题的一种解决方式
下一篇: 微信小程序结构简介
Liu_Dag
博客等级 码龄10年 37粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Liu_Dag

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值