當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
node JS 微信开发
生活随笔
收集整理的這篇文章主要介紹了
node JS 微信开发
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
JS-SDK 要點
微信測試號; 掃碼登錄;無需認證(只是名稱統一為微信測試號)
http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
JS-SDK 說明文檔
http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html#JSSDK.E4.BD.BF.E7.94.A8.E6.AD.A5.E9.AA.A4
簽名驗證
獲取token
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function getToken(config, cb) { var tokenUrl = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appId=' + config.appId + '&secret=' + config.appSecret; request.get(tokenUrl, function(error, response, body) { if (error) { cb('getToken error', error); } else { try { var token = JSON.parse(body).access_token; cb(null, token); } catch (e) { cb('getToken error', e); } } }); } |
獲取ticket
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function getNewTicket(token, cb) { request.get('https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=' + token + '&type=jsapi', function(error, res, body) { if (error) { cb('getNewTicket error', error); } else { try { var ticket = JSON.parse(body).ticket; cb(null, ticket); } catch (e) { cb('getNewTicket error', e); } } }); } |
生成JS-SDK權限驗證的簽名了
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | function getTimesTamp() { return parseInt(new Date().getTime() / 1000) + ''; } function getNonceStr() { return Math.random().toString(36).substr(2, 15); } var timestamp = getTimesTamp(); var noncestr = getNonceStr(); var str = 'jsapi_ticket=' + result + '&noncestr='+ noncestr+'×tamp=' + timestamp + '&url=' + u; console.log(str); var signature = crypto.createHash('sha1').update(str).digest('hex'); cb(null, { appId: config.appId, timestamp: timestamp, nonceStr: noncestr, signature: signature }); |
踩過的坑
所以?416973.dowei8.com:21119/tt?類似的網址只能配置為dowei8.com:21119
完整代碼
下載地址:?http://git.oschina.net/xinshangshangxin/node_JS-SDK_signature
映射外網/上傳服務器
npm install?安裝依賴包
node index.js?運行主程序
配置?JS接口安全域名
微信訪問
參考文檔
- https://github.com/willian12345/wechat-JS-SDK-demo
轉載于:https://www.cnblogs.com/cench/p/5639131.html
總結
以上是生活随笔為你收集整理的node JS 微信开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS开发-开发总结(七)
- 下一篇: inline-block 和 float