最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node.js?實現(xiàn)手機(jī)號驗證碼登錄功能

 更新時間:2022年08月12日 09:16:49   作者:葉鮮樂  
這篇文章主要介紹了node.js?實現(xiàn)手機(jī)號驗證碼登錄功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1.注冊容聯(lián)云通信賬號(免費)

1.官網(wǎng)進(jìn)行注冊:https://www.yuntongxun.com/

第二步 拿到自己的ACCOUNT_SID、AUTH_TOKENRest_URL、AppID

            

第三步注冊自己的測試手機(jī)號

第四步 下載包

1.npm i md5 --save
2.npm i moment --save
3.npm i js-base64 --save
4.npm i request --save

一次下載 :npm i md5 moment js-base64 request --save 注意:package.json 看一下一定要全部安裝到位

第五步 寫代碼 創(chuàng)建文件夾 文件命名 自己隨意

可復(fù)制:    

const md5 = require('blueimp-md5')
const moment = require('moment')
const Base64 = require('js-base64').Base64;
const request = require('request');

/*
 生成指定長度的隨機(jī)數(shù)
 */
function randomCode(length) {
    const chars = ['0','1','2','3','4','5','6','7','8','9'];
    const result = ""; //統(tǒng)一改名: alt + shift + R
    for(var i = 0; i < length ; i ++) {
        var index = Math.ceil(Math.random()*9);
        result += chars[index];
    }
    return result;
}
// console.log(randomCode(6));
exports.randomCode = randomCode;

/*
向指定號碼發(fā)送指定驗證碼
 */
function sendCode(phone, code, callback) {
    const ACCOUNT_SID = '賬號上的 ACCOUNT_SID';
    const AUTH_TOKEN = '賬號上AUTH_TOKEN ';
    const Rest_URL = 'https://app.cloopen.com:8883';
    const AppID = '賬號上的AppID ';
    //1. 準(zhǔn)備請求url
    /*
     1.使用MD5加密(賬戶Id + 賬戶授權(quán)令牌 + 時間戳)。其中賬戶Id和賬戶授權(quán)令牌根據(jù)url的驗證級別對應(yīng)主賬戶。
     時間戳是當(dāng)前系統(tǒng)時間,格式"yyyyMMddHHmmss"。時間戳有效時間為24小時,如:20140416142030
     2.SigParameter參數(shù)需要大寫,如不能寫成sig=abcdefg而應(yīng)該寫成sig=ABCDEFG
     */
    const sigParameter = '';
    const time = moment().format('YYYYMMDDHHmmss');
    sigParameter = md5(ACCOUNT_SID+AUTH_TOKEN+time);
    const url = Rest_URL+'/2013-12-26/Accounts/'+ACCOUNT_SID+'/SMS/TemplateSMS?sig='+sigParameter;

    //2. 準(zhǔn)備請求體
    const body = {
        to : phone,
        appId : AppID,
        templateId : '1',
        "datas":[code,"1"]
    }
    //body = JSON.stringify(body);

    //3. 準(zhǔn)備請求頭
    /*
     1.使用Base64編碼(賬戶Id + 冒號 + 時間戳)其中賬戶Id根據(jù)url的驗證級別對應(yīng)主賬戶
     2.冒號為英文冒號
     3.時間戳是當(dāng)前系統(tǒng)時間,格式"yyyyMMddHHmmss",需與SigParameter中時間戳相同。
     */
    const authorization = ACCOUNT_SID + ':' + time;
    authorization = Base64.encode(authorization);
    const headers = {
        'Accept' :'application/json',
        'Content-Type' :'application/json;charset=utf-8',
        'Content-Length': JSON.stringify(body).length+'',
        'Authorization' : authorization
    }

    //4. 發(fā)送請求, 并得到返回的結(jié)果, 調(diào)用callback
      // callback(true);
    request({
        method : 'POST',
        url : url,
        headers : headers,
        body : body,
        json : true
    }, function (error, response, body) {
        callback(body.statusCode==='000000');
    });
}
exports.sendCode = sendCode;

第六步 在接口文件夾引入

const {randomCode,sendCode}=require("../utils/getMessage");
// 登錄  注意:這個接口根據(jù)你自己的寫接口習(xí)慣更改  我這個接口用的是模塊化 對外暴露 在外界文件夾中引入使用
exports.login = (req,res)=>{
  let code=randomCode(6);//生成6位數(shù)字隨機(jī)驗證碼
  console.log(code)
  sendCode("15224745090",code,function(success){
      if(success){
          res.send("短信驗證碼已發(fā)送");
      }else{
          res.send("短信驗證碼發(fā)送失敗");
      }
  })

}

到此這篇關(guān)于node.js 實現(xiàn)手機(jī)號驗證碼登錄功能的文章就介紹到這了,更多相關(guān)node.js 手機(jī)號 驗證碼 登錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • nvm使用use命令失效問題解決方法

    nvm使用use命令失效問題解決方法

    這篇文章主要給大家介紹了關(guān)于nvm使用use命令失效問題的解決方法,nvm是一個類似于版本管理工具的軟件,它可以輕松地在同一臺計算機(jī)上管理多個不同的node.js版本,需要的朋友可以參考下
    2023-07-07
  • Nodejs中使用puppeteer控制瀏覽器中視頻播放功能

    Nodejs中使用puppeteer控制瀏覽器中視頻播放功能

    本項目主要功能為在瀏覽器中自動播放視頻,并且實現(xiàn)音量控制,快進(jìn)快退,全屏控制,播放暫??刂频裙δ堋odejs中使用puppeteer控制瀏覽器中視頻播放功能感興趣的朋友跟隨小編一起看看吧
    2019-08-08
  • Node.js?queryString?解析和格式化網(wǎng)址查詢字符串工具使用

    Node.js?queryString?解析和格式化網(wǎng)址查詢字符串工具使用

    這篇文章主要為大家介紹了Node.js?queryString?解析和格式化網(wǎng)址查詢字符串工具使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程

    Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程

    這篇文章主要介紹了Node.js開發(fā)之訪問Redis數(shù)據(jù)庫教程,本文講解了安裝Redis的Node.js驅(qū)動、編寫測試程序以及npm遠(yuǎn)程服務(wù)器連接十分緩慢的解決方法,需要的朋友可以參考下
    2015-01-01
  • 如何使用nvm實現(xiàn)nodejs版本管理(版本刪除,版本切換及版本添加)

    如何使用nvm實現(xiàn)nodejs版本管理(版本刪除,版本切換及版本添加)

    這篇文章主要給大家介紹了關(guān)于如何使用nvm實現(xiàn)nodejs版本管理(版本刪除,版本切換及版本添加)的相關(guān)資料,nvm是一個node版本管理工具,通過它可以安裝多種node版本并且可以快速、簡單的切換node版本,需要的朋友可以參考下
    2023-10-10
  • 初識NodeJS服務(wù)端開發(fā)入門(Express+MySQL)

    初識NodeJS服務(wù)端開發(fā)入門(Express+MySQL)

    本篇文章主要介紹了初識NodeJS服務(wù)端開發(fā)入門(Express+MySQL),可以對數(shù)據(jù)庫中的一張表進(jìn)行簡單的CRUD操作,有興趣的可以了解一下。
    2017-04-04
  • 淺談使用nodejs搭建web服務(wù)器的過程

    淺談使用nodejs搭建web服務(wù)器的過程

    這篇文章主要介紹了淺談使用nodejs搭建web服務(wù)器的過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 利用Node轉(zhuǎn)換Excel成JSON的詳細(xì)步驟

    利用Node轉(zhuǎn)換Excel成JSON的詳細(xì)步驟

    最近工作中遇到一個需求,大致需求就是將Excel文件在導(dǎo)入時解析為json格式轉(zhuǎn)換數(shù)據(jù)結(jié)構(gòu)再傳輸給后臺,下面這篇文章主要給大家介紹了關(guān)于如何利用Node轉(zhuǎn)換Excel成JSON的詳細(xì)步驟,需要的朋友可以參考下
    2022-11-11
  • Node如何后臺數(shù)據(jù)庫使用增刪改查功能

    Node如何后臺數(shù)據(jù)庫使用增刪改查功能

    這篇文章主要介紹了Node如何后臺數(shù)據(jù)庫使用增刪改查功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Node.js中的HTTP請求與響應(yīng)詳解

    Node.js中的HTTP請求與響應(yīng)詳解

    本文詳細(xì)講解了Node.js中的HTTP請求與響應(yīng),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評論

宜州市| 罗城| 子长县| 新龙县| 蒙山县| 彭州市| 东乌珠穆沁旗| 姚安县| 紫云| 屏山县| 吉安市| 灵丘县| 荆州市| 桂林市| 曲靖市| 福建省| 兖州市| 牙克石市| 兖州市| 张家港市| 循化| 宝丰县| 莱州市| 溧阳市| 福鼎市| 江山市| 凤山县| 林州市| 新绛县| 凤台县| 榆林市| 新泰市| 锡林浩特市| 宁明县| 大丰市| 宜君县| 保山市| 南川市| 黑龙江省| 克拉玛依市| 临朐县|