一、概要
現如今在日常工作和生活中短信驗證碼對於我們來說是非常熟悉的,比較常見的注冊賬號或者交易支付時候,手機會收到一個短信驗證碼,我們可以通過驗證碼來有效驗證身份,避免一些信息被盜。

驗證身份
目前隨着app軟件以及一些電商網站發展,在注冊相關賬號或者支付時候都離不了短信驗證碼,通過驗證碼能夠有效避免一些重復數據或者爛數據。而且只需要而只要在規定時間內正確輸入短信驗證碼,就可以直接登錄賬號或者進行相關交易支付等。
1.0、具體的實現步驟
1.0.1、首先你必須要有一個備案成功的網站,然后添加一個短信應用,如下圖:
第一步:創建短信應用
第二步:創建短信簽名
第三步:在第二步成功后再創建短信模板
第四步:這里就設置完成了,接下來是Java代碼,通過騰訊給的java sdk接口實現
package com.hexianwei.sms; import com.github.qcloudsms.SmsSingleSender; import com.github.qcloudsms.SmsSingleSenderResult; import org.json.JSONException; import javax.xml.ws.http.HTTPException; import java.io.IOException; import java.util.Random; public class SendSMSUtils { public static void main(String[] args) { //騰訊短信應用的 SDK AppID int appid = 1400******; String appkey = "****************************";//騰訊雲短信中的 App Key int templateId = ******;// NOTE: 這里是短信模板ID需要在短信控制台中申請 String smsSign = "";//設置信息標頭,如【騰訊雲】 //驗證碼 String str = ""; try { //隨機生成6位的驗證碼 Random random = new Random(); for (int i = 0; i < 6; i++) { str += random.nextInt(10); } String[] params = {str, "2"}; SmsSingleSender ssender = new SmsSingleSender(appid, appkey); // 簽名參數未提供或者為空時,會使用默認簽名發送短信,這里的13800138000是為用戶輸入的手機號碼 SmsSingleSenderResult result = ssender.sendWithParam("86", "13800138000", templateId, params, smsSign, "", ""); System.out.println(result); } catch (HTTPException e) { // HTTP響應碼錯誤 e.printStackTrace(); } catch (JSONException e) { // json解析錯誤 e.printStackTrace(); } catch (IOException e) { // 網絡IO錯誤 e.printStackTrace(); } catch (com.github.qcloudsms.httpclient.HTTPException e) { e.printStackTrace(); } } }
注:本博客僅為個人學習筆記!