const?密碼?=?require(“crypto”);
功能?簽名()
{
var?strMobile?=?“這是我的手機”;?//tel的移動字段的內容。
var?斯特拉普基。=?“這是我的鑰匙”;?//sdkappid對應的appkey需要業務方高度保密。
var?strRand?=?"7226249334";?//url中隨機字段的值。
var?strTime?=?"1457336869";?//unix時間戳
var?buf?=?“appkey =“+strAppKey+“& amp;random =“+strRand+“& amp;時間=“
+strTime+“& amp;mobile =“+strMobile;
var?西格?=?crypto . create hash(‘sha 256‘)。更新(buf,?utf-8’)。digest(‘hex‘);
回歸?sig
}
控制臺。log(SIG());輸出結果如下:
7b 1e 97051886 Abd 66 c 684530 db 2 b 01644 f 828 f 31e 06d 624d 88 af 5469 afaa 0原因是文檔中強調了utf-8,但js的默認編碼不是這個,因此需要指定。
另外,這個sig的計算結果與妳的輸出參數有關,它不是常數。
還有妳的手機和appkey都是中文的,官方的似乎是數字和字母。