nodejs获取微信小程序带参数二维码实现代码
由于项目需求,需要获取小程序页面的带有参数的二维码。好,那就看文档搞吧。
之前都是写前端,没有写过后台的东西,这次难得有机会组长让我试一试试用node来写,那就写吧。
1、首页获取token,发送request请求,用get的方式,在url后面加上小程序的grant_type,appid,secret,就顺利拿到token了,注意,这个token是有有效时间的,小程序的是7200秒,也就是2个小时,每天获取的次数有限,需要有个中控服务器定时获取token,由于我的业务量小,就没有对token进行保存了,每次都是重新获取。
2、获取完token之后,再发送请求获取二维码,坑的是,微信没有告诉我们获取的是二进制流,之前一直是写前端的代码,对流没有概念,百度之,谷歌之,折腾了两天,终于搞定。还遇到了express的坑,用原来express的代码,死活生成不了二维码,新建一个express再生成二维码就没问题,莫名其妙的坑。
上代码:
var fs = require('fs'); var request = require('request'); var wx_conf = require('../../conf/wx_conf');//这里放了微信appid跟appSecret,文件没有引入进来,要用的时候,改一下吧。 var AccessToken = { grant_type: 'client_credential', appid: wx_conf.appId, secret: wx_conf.appSecret } var wx_gettoken_url = 'https://api.weixin.qq.com/cgi-bin/token"pages/index/index", width: 430 } var createQrcode = { create: function() { console.log('fn:create'); this.getToken(); }, //获取微信的token getToken: function() { console.log('fn:getToken'); var that = this; new Promise((resolve, reject) => { console.log('进入Promise方法了'); request({ method: 'GET', url: wx_gettoken_url }, function(err, res, body) { if (res) { resolve({ isSuccess: true, data: JSON.parse(body) }); } else { console.log (err); reject({ isSuccess: false, data: err }); } }) }).then(proData => { that.getQrcode(proData); }); }, //生成二维码 getQrcode: function(proData) { console.log ('fn:getQrcode'); if (proData.isSuccess) { postData = JSON.stringify(postData); request({ method: 'POST', url: 'https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=' + proData.data.access_token, body: postData }).pipe(fs.createWriteStream('./public/images/index.png'));//路径自己定义吧 } else { console.log('Promise请求数据出错'); } } } module.exports = createQrcode;//暴露对象,调用create方法既可以创建二维码
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
风云阁资源网 Design By www.bgabc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
风云阁资源网 Design By www.bgabc.com
暂无评论...
更新日志
2024年09月23日
2024年09月23日
- 金池VS刘罡2009《双声情》[WAV+CUE]
- 冯奥迪《卄》[320K/MP3][67.08MB]
- 冯奥迪《卄》[FLAC/分轨][172.46MB]
- Merryland《Merryland》[320K/MP3][69.48MB]
- 苏芮.1991-停在我心里的温柔【福茂】【WAV+CUE】
- 苏慧伦.2020-面面Every.Side.of.Me【相信音乐】【WAV+CUE】
- 群星.1991-不一样的感觉REMIX【宝丽金】【WAV+CUE】
- 银霞.1983-《你那好冷的小手》珍藏纪念版[WAV分轨]
- 银霞.2002-《国语巨星专辑VOL.3》2CD台湾版[WAV+CUE]
- 金池刘罡《昨日情歌HQ》头版限量编号[低速原抓WAV+CUE]
- 段奥娟.2024-23·岁碎念【白米范】【FLAC分轨】
- 顺子.2001-昨日·唯一·更多·顺子自选辑【魔岩】【WAV+CUE】
- 无印良品.1999-私藏三首·原创相对论(EP)【滚石】【WAV+CUE】
- Merryland《Merryland》[FLAC/分轨][170.22MB]
- 庄锭欣 ELKIE《没有你的未来》[320K/MP3][15.78MB]