兩階段驗證的流程中需要一個金鑰,測試時因為只有一名使用者,所以就自行指定亂數字串。
但是如果有多位使用者,自訂亂數字串就顯得不合時宜了。
在網路上找到crypto模組可以產生亂數,我的程式如下,記錄一下以方便未來直接引用
import crypto from 'crypto';
let buf = crypto.randomBytes(12);
let buf_str = buf.toString('base64');
console.log(buf_str);
randomBytes會傳回指定Bytes長度的亂數資料,其類型為 binary buffer
利用toString()並指定base64編碼轉成字串
這樣就可以很方便取得亂數字串了。
支援的編碼類型有:ascii, utf8, utf16le/ucs2, base64, binary, hex