1.獲取token
2.通過token,獲取jsapi_ticket
3.生成隨機字串,獲取當前時間戳
4.排序拼接生成簽名
var express = require('express');
var router = express.router();
var axios = require('axios');
var sha1 = require('sha1');
var fs = require('fs');
let accesstokenjson = require('../user_token');
let config_noncestr = '' //隨機字串
let config_timestamp = '' //時間戳
/* get home page. */
router.get('/', function(req, res, next) );
router.get('/getwxconfig', function (req, res, next) )
})});/*獲取token*/
function gettoken()
}).then(res=>).catch(err => )
}else
})}/* 通過token,獲取jsapi_ticket */
function getticket(accesstoken)
}).then(res => ).catch(err=>)
})}/**
* 簽名演算法
* @param ticket 用於簽名的 jsapi_ticket
* @param url 用於簽名的 url ,注意必須動態獲取
* @return sha1演算法加密的字串
*/function signature(ticket, url)
var string = raw(ret) // 排序拼接為字串
console.log(string)
return sha1(string) // 返回sha1加密的字串
}/* 生成隨機字串 */
function createnoncestr()
/* 獲取當前時間戳 */
function createtimestamp()
/* 排序拼接 */
function raw(args)
keys.foreach(key=>)
let string = '';
for (let k in newargs) =$`
} string = string.substr(1)// 擷取第乙個字元以後的字串(去掉第乙個'&')
return string;
}module.exports = router;
如果有伺服器的可以跳過這一步
使用步驟:
1、繫結網域名稱
2、引入js檔案
3、配置config
wx.config();
4、通過ready介面處理成功驗證,通過error介面處理失敗驗證 微信jsdk中 config的獲取類
param unknown access token return ambigous function get jsapi ticket access token return jsapi ticket 所有引數名均為小寫字元 param unknown noncestr 隨機字串 param un...
nodeJS微信分享
二 js請求node後台簽名 隨機數 時間戳之類的 function getwxsignature success function jsons 三 nodejs express 路由 分享 router.post activitywxshaer function req,res,next 簽名 p...
nodejs微信開發 接入指南
首先github位址奉上 歡迎star?花生殼 這個速度還可以,但是只有window客戶端的,貌似還可以折騰路由器那邊的東西,我也沒深入折騰。nat123 與花生殼類似,但是速度著實不太給力。經常配置錯誤。說是免費但是需要預充幾塊錢進去,不是很推薦。為什麼使用leancloud,其實是我沒太接觸其他...