wordpress 建站的利弊成都網(wǎng)站建設(shè)系統(tǒng)
驗(yàn)證碼服務(wù)使用指南
1 部署驗(yàn)證碼服務(wù)
1.1 基礎(chǔ)環(huán)境
Java 1.8+
Maven3.3.9+
1.2 安裝Redis
參考“Redis安裝指南”
1.3 部署驗(yàn)證碼服務(wù)
1.3.1 下載源碼
使用git從遠(yuǎn)程下載驗(yàn)證碼服務(wù)代碼(開(kāi)源)。
1.3.2 使用idea打開(kāi)項(xiàng)目
使用idea打開(kāi)上一步下載的sailing目錄,下圖是sailing在idea的工程結(jié)構(gòu)。
git clone https://gitee.com/qawine_base/sailing.git
1.3.3 開(kāi)通騰訊云短信服務(wù)
本服務(wù)中的短信發(fā)送使用了騰訊云短信服務(wù),生產(chǎn)環(huán)境需要注冊(cè)騰訊云開(kāi)通短信服務(wù):
-
開(kāi)通騰訊云短信服務(wù)
https://cloud.tencent.com/product/isms/getting-started- 開(kāi)通短信服務(wù)成功后,獲取 SDKAppID 和 AppKey
云短信應(yīng)用 SDKAppID 和 AppKey 可在 短信控制臺(tái) 的應(yīng)用信息里獲取。如您尚未添加應(yīng)用,請(qǐng)登錄 短信控制臺(tái) 添加應(yīng)用。 - 申請(qǐng)簽名并確認(rèn)審核通過(guò)
一個(gè)完整的短信由短信簽名和短信正文內(nèi)容兩部分組成,短信簽名需申請(qǐng)和審核,簽名可在 短信控制臺(tái)的相
應(yīng)服務(wù)模塊【內(nèi)容配置】中進(jìn)行申請(qǐng),詳細(xì)申請(qǐng)操作請(qǐng)參見(jiàn) 創(chuàng)建簽名。發(fā)送國(guó)際短信時(shí),允許不攜帶簽名。 - 申請(qǐng)模板并確認(rèn)審核通過(guò)
短信或語(yǔ)音正文內(nèi)容模板需申請(qǐng)和審核,模板可在 短信控制臺(tái) 的相應(yīng)服務(wù)模塊【內(nèi)容配置】中進(jìn)行申請(qǐng),詳細(xì)申請(qǐng)操作請(qǐng)參見(jiàn) 創(chuàng)建正文模板。
- 開(kāi)通短信服務(wù)成功后,獲取 SDKAppID 和 AppKey
-
配置短信參數(shù)
- 打開(kāi)項(xiàng)目中sailing/src/main/resources/application.yml
- 將騰訊云短信服務(wù)獲取到參數(shù)做如下配置:
sms:qcloud:appId: 14000000appKey: 36ff7sd14d0d2342344cdf335cc25052templateId: 234323sign: 簽名
appId:上邊第1步開(kāi)通短信服務(wù)成功后獲取SDKAppID
appKey:上邊第1步開(kāi)通短信服務(wù)成功后獲取AppKey
sign:上邊第2步申請(qǐng)簽名
templateId:上邊第3步申請(qǐng)模板
1.3.4 控制臺(tái)獲取驗(yàn)證碼
如果暫時(shí)沒(méi)有申請(qǐng)到騰訊云短信服務(wù),可以臨時(shí)將驗(yàn)證碼輸出到控制臺(tái)。
修改sailing/src/main/java/com/yh/sailing/handler/SmsNumberVerificationHandler.java
@Override
String confusion(Map<String, Object> payload, String key, String code) { String mobile = String.valueOf(payload.get("mobile")); // 使用騰訊云發(fā)送短信 //smsService.send(mobile, code, getEffectiveTime()); // 測(cè)試使用,在控制臺(tái)輸出驗(yàn)證碼 smsService.sendOnConsole(mobile, code, getEffectiveTime()); return null;
}
1.3.5 啟動(dòng)服務(wù)
2 使用驗(yàn)證碼服務(wù)
2.1 發(fā)送驗(yàn)證碼
參數(shù)名 | 參數(shù)類(lèi)型 | 描述 |
---|---|---|
name | string(query) | 業(yè)務(wù)名稱(chēng)(使用何種方式的驗(yàn)證碼,可選的有sms, img, mail等) |
payload | application/json | 業(yè)務(wù)攜帶參數(shù),如手機(jī)號(hào) 、郵箱 |
effectiveTime | string(query) | 驗(yàn)證信息有效期(秒) |
- 點(diǎn)擊’Try it out’, 填寫(xiě)參數(shù)進(jìn)行測(cè)試
參數(shù)說(shuō)明:
name: 業(yè)務(wù)名稱(chēng),短信的業(yè)務(wù)名稱(chēng)為"sms"。
payload:發(fā)送短信時(shí)這里要填寫(xiě)mobile,json格式。
發(fā)送驗(yàn)證碼成功,可通過(guò)手機(jī)查看,如果在開(kāi)發(fā)階段可 在控制臺(tái)查看驗(yàn)證碼:
INFO [http‐nio‐56085‐exec‐1][QCloudSmsService.java:37] ‐ 給手機(jī)號(hào)xxxxxxxxxxxx發(fā)送驗(yàn)證碼:xxxx
2.2 校驗(yàn)驗(yàn)證碼
-
接口說(shuō)明:http://localhost:56085/sailing/swagger-ui.html#/verification-controller/verifyUsingPOST
參數(shù)名 參數(shù)類(lèi)型 描述 name string(query) 業(yè)務(wù)名稱(chēng)(使用何種方式的驗(yàn)證碼,可選的有sms, img, mail等) verificationCode string(query) 驗(yàn)證碼 verificationKey string(query) 驗(yàn)證key -
點(diǎn)擊’Try it out’, 填寫(xiě)驗(yàn)證碼和驗(yàn)證key進(jìn)行測(cè)試
-
查看校驗(yàn)結(jié)果:返回true則為校驗(yàn)通過(guò)
-utoBcBof-1703516253957)]
-
點(diǎn)擊’Try it out’, 填寫(xiě)驗(yàn)證碼和驗(yàn)證key進(jìn)行測(cè)試
[外鏈圖片轉(zhuǎn)存中…(img-OTcfEEOu-1703516253961)]
-
查看校驗(yàn)結(jié)果:返回true則為校驗(yàn)通過(guò)