現(xiàn)在幾乎所有的網(wǎng)站或app都具有發(fā)送短信驗證碼功能,最常見的應(yīng)用場景如網(wǎng)站或app的用戶注冊、安全登錄等,網(wǎng)站或app具有發(fā)送短信驗證碼功能是通過調(diào)用短信接口實現(xiàn)的,那么如何通過調(diào)用短信接口實現(xiàn)發(fā)送短信驗證碼呢?
首先需要找到一家正規(guī)靠譜的短信服務(wù)商獲取相應(yīng)的資料:
一、獲取短信接口地址,如樂信短信接口地址:https://www.lx198.com/send2 ;
二、申請賬號,樂信短信平臺賬戶申請地址為:http://www.iium.cn/acc/x5?i=110792 ;
三、獲取短信API文檔,樂信短信接口API文檔:/uploads/allimg/181024/1635045J5-0.jpg ;
四、獲取對應(yīng)開發(fā)語言的短信接口demo;
下面是樂信php發(fā)送短信接口demo:
<?php
// ① 該代碼僅供接入動力思維樂信短信接口參考使用,客戶可根據(jù)實際需要自行編寫;
// ② 支持發(fā)送驗證碼短信、觸發(fā)通知短信等;
// ③ 測試驗證碼短信、通知短信,請用默認(rèn)的測試模板,默認(rèn)模板詳見接口文檔。
require_once
'HttpClient.class.php';
class dlswSdk {
const HOST = 'www.lx198.com';
/**
* 發(fā)送短信
* @param $user 用戶名
* @param $password 密碼
* @param $content 內(nèi)容后加簽名
* @param $mobiles 手機號多個手機號之間英文半角逗號隔開
* @return 服務(wù)端返回的結(jié)果 ok:業(yè)務(wù)id 或者 錯誤代碼
*/
final public static function sendSms($user, $password,$content,$mobiles) {
$client = new HttpClient ( self::HOST );
$client->setDebug ( true );
$seed=date ( 'YmdHis' );
if (! $client->post ( '/sdk/send2', array (
'accName' => $user,
'accPwd' => strtoupper(md5(strtoupper ( md5 ( $password ))+$seed )),
'seed' => $seed,
'content' => mb_convert_encoding ( $content, 'UTF-8', 'UTF-8' ),
'aimcodes' =>$mobiles
) )) {
return '-10000';
} else {
return $client->getContent () ;
}
}
?>
其次參考短信接口API文檔以及相應(yīng)開發(fā)語言短信接口demo,在網(wǎng)站程序或app程序需要發(fā)送短信驗證碼的地方調(diào)用短信接口,并設(shè)置相應(yīng)的參數(shù)。
最后測試,測試完成后就可以正式使用了,需要提醒的是如果是在用戶注冊頁面調(diào)用接口,還需要對惡意發(fā)送的情況進(jìn)行防范,以免受到不必要的損失。推薦閱讀:短信驗證碼接口安全設(shè)計