日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

中国网建java发送短信_短信验证登陆-中国网建提供的SMS短信平台

發(fā)布時間:2025/3/8 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 中国网建java发送短信_短信验证登陆-中国网建提供的SMS短信平台 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、JAVA發(fā)送手機(jī)短信常見的有三種方式(如下所列):

使用webservice接口發(fā)送手機(jī)短信,這個可以使用sina提供的webservice進(jìn)行發(fā)送,但是需要進(jìn)行注冊

使用短信mao的方式進(jìn)行短信的發(fā)送,這種方式應(yīng)該是比較的常用,前提是需要購買硬件設(shè)備。

二、一下整理了SMS短信驗(yàn)證過程:

1、首先需要帶入三個包:

commons-httpclient-3.1.jar? ? ??commons-logging-1.0.4.jar? ? ??codec-1.3.jar

2、創(chuàng)建發(fā)送短信的類(一般寫在工具類中),其中要通過短信內(nèi)容要進(jìn)行設(shè)置編碼集為utf-8,調(diào)用第三方接口傳參要按照第三方文檔規(guī)范:

packagecom.demo.util;importjava.io.IOException;importjava.util.Map;importorg.apache.commons.httpclient.HttpClient;importorg.apache.commons.httpclient.HttpException;importorg.apache.commons.httpclient.SimpleHttpConnectionManager;importorg.apache.commons.httpclient.methods.GetMethod;importorg.apache.commons.httpclient.methods.PostMethod;public classHttpRequestUtil {/*** HttpClient 模擬POST請求*/

public static String postRequest(String url, Mapparams) {//構(gòu)造HttpClient的實(shí)例

HttpClient httpClient = newHttpClient();//創(chuàng)建POST方法的實(shí)例

PostMethod postMethod = newPostMethod(url);//設(shè)置請求頭信息

postMethod.setRequestHeader("Connection", "close");//添加參數(shù)

for (Map.Entryentry : params.entrySet()) {

postMethod.addParameter(entry.getKey(), entry.getValue());

}//使用系統(tǒng)提供的默認(rèn)的恢復(fù)策略,設(shè)置請求重試處理,用的是默認(rèn)的重試處理:請求三次

httpClient.getParams().setBooleanParameter("http.protocol.expect-continue", false);//接收處理結(jié)果

String result = null;try{//執(zhí)行Http Post請求

httpClient.executeMethod(postMethod);//返回處理結(jié)果

result =postMethod.getResponseBodyAsString();

}catch(HttpException e) {//發(fā)生致命的異常,可能是協(xié)議不對或者返回的內(nèi)容有問題

System.out.println("請檢查輸入的URL!");

e.printStackTrace();

}catch(IOException e) {//發(fā)生網(wǎng)絡(luò)異常

System.out.println("發(fā)生網(wǎng)絡(luò)異常!");

e.printStackTrace();

}finally{//釋放鏈接

postMethod.releaseConnection();//關(guān)閉HttpClient實(shí)例

if (httpClient != null) {

((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown();

httpClient= null;

}

}returnresult;

}/*** HttpClient 模擬GET請求*/

public static String getRequest(String url, Mapparams) {//構(gòu)造HttpClient實(shí)例

HttpClient client = newHttpClient();//拼接參數(shù)

String paramStr = "";for(String key : params.keySet()) {

paramStr= paramStr + "&" + key + "=" +params.get(key);

}

paramStr= paramStr.substring(1);//創(chuàng)建GET方法的實(shí)例

GetMethod method = new GetMethod(url + "?" +paramStr);//接收返回結(jié)果

String result = null;try{//執(zhí)行HTTP GET方法請求

client.executeMethod(method);//返回處理結(jié)果

result =method.getResponseBodyAsString();

}catch(HttpException e) {//發(fā)生致命的異常,可能是協(xié)議不對或者返回的內(nèi)容有問題

System.out.println("請檢查輸入的URL!");

e.printStackTrace();

}catch(IOException e) {//發(fā)生網(wǎng)絡(luò)異常

System.out.println("發(fā)生網(wǎng)絡(luò)異常!");

e.printStackTrace();

}finally{//釋放鏈接

method.releaseConnection();//關(guān)閉HttpClient實(shí)例

if (client != null) {

((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown();

client= null;

}

}returnresult;

}

}

packagecom.demo.util;importjava.net.URLEncoder;importjava.util.HashMap;importjava.util.Map;public classSendMsgUtil {/*** 發(fā)送短信消息*/@SuppressWarnings("deprecation")public staticString sendMsg(String phones,String content){//短信接口URL提交地址utf-8

String url = "http://utf8.sms.webchinese.cn";

Map params = new HashMap();//用戶名,例:abc123456

params.put("Uid", "yu3961520");//短信接口密鑰 ,不是密碼,例:79c3053154d313a34567

params.put("Key", "d41d8cd98f00b204e980");//手機(jī)號碼,多個號碼使用英文逗號進(jìn)行分割

params.put("smsMob", phones);//將短信內(nèi)容進(jìn)行URLEncoder編碼

params.put("smsText", URLEncoder.encode(content));returnHttpRequestUtil.getRequest(url, params);

}/*** 隨機(jī)生成6位隨機(jī)驗(yàn)證碼*/

public staticString createRandomVcode(){//驗(yàn)證碼

String vcode = "";for (int i = 0; i < 6; i++) {

vcode= vcode + (int)(Math.random() * 9);

}returnvcode;

}/*** 測試*/

public static voidmain(String[] args) {//多個手機(jī)號請用半角,隔開//例:System.out.println(sendMsg("18912345678,17812345678", "尊敬的用戶,您的驗(yàn)證碼為" + SendMsgUtil.createRandomVcode() + ",有效期為60秒,如有疑慮請?jiān)斣?00-3023-4493(客服電話)【中國聯(lián)通】"));

System.out.println(sendMsg("電話號碼", "*****,你的驗(yàn)證碼為" + SendMsgUtil.createRandomVcode() + ",有效期為60秒,如有疑慮請?jiān)斣?******)【簽名,這是驗(yàn)證格式的必須填】"));

}

}

3、短信發(fā)送后返回值 說明 :

-1 沒有該用戶賬戶

-2 密鑰不正確(不是用戶密碼)

-3 短信數(shù)量不足

-11 該用戶被禁用

-14 短信內(nèi)容出現(xiàn)非法字符

-41 手機(jī)號碼為空

-42 短信內(nèi)容為空

大于0 短信發(fā)送數(shù)量

總結(jié)

以上是生活随笔為你收集整理的中国网建java发送短信_短信验证登陆-中国网建提供的SMS短信平台的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。