本篇文章给大家分享的是有关Java中怎么实现SMS短信通发送手机验证码,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
注意不要乱写别的公司等,会被视为诈骗信息
设置短信密钥,发送时代替密码
导入依赖 commons-httpclient-3.1.jar
编写SmsUtil工具类
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class SmsUtil {
private String uid;
private String key;
//用于后面的Spring注入方式实现
public int sendSms(String smsMob,String smsTxt ){
return sendSms(this.uid,this.key,smsMob,smsTxt);
}
public String getUid() {
return uid;
}
public void setUid(String uid) {
this.uid = uid;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public static void main(String[] args){
int n=sendSms("用户名","密钥","手机号","短信内容");
//如int n=sendSms("abc","55555","11234567574","验证码:8899");
//返回的是发送成功的短信条数
System.out.println("发送成功:"+n);
}
public static int sendSms(String uid,String key,String smsMob,String smsTxt )
{
PostMethod post =null;
try {
HttpClient client = new HttpClient();
post = new PostMethod("http://utf8.api.smschinese.cn");
post.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf8");//在头文件中设置转码
NameValuePair[] data = {
new NameValuePair("Uid", uid)
, new NameValuePair("Key", key)
, new NameValuePair("smsMob", smsMob)
, new NameValuePair("smsText", smsTxt)};
post.setRequestBody(data);
client.executeMethod(post);
return Integer.parseInt(post.getResponseBodyAsString());
}catch (Exception ex){
ex.printStackTrace();
throw new RuntimeException(ex);
}
finally {
post.releaseConnection();
}
}
}
使用Spring进行注入
在applicationContext增加配置
定义用户名和密钥
以上就是Java中怎么实现SMS短信通发送手机验证码,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。