nodeJs 获取小程序页面二维码

小程序中用到了扫描二维码打开指定的小程序页面功能,微信提供了指定页面的二维码生成借口,但是返回的不是二维码的网络地址,需要服务端转存一下;用node搞了一下
API地址

接口需要access_token,请求access_token涉及到appid,secret就没把代码贴出来;用下面的接口获取access_token,GET请求;懒得写代码的直接扔到浏览器获取即可;

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

直接上货

var http = require("http"),
fs = require("fs"),
data = {"path": "pages/homePage/homePage", "width": 430};
data = JSON.stringify(data);
var options = {
    method: "POST",
    host: "api.weixin.qq.com",
    path: "/cgi-bin/wxaapp/createwxaqrcode?access_token=5-R9rTlaeHF9bdZPWWh-t9BefbthRfbe5idSzuOSXoSFfPcUOUcTca1QhLNjDVclBK489LX88-hUeT1kL9FV8GBR4fWY78PVxyx_OGnNbJsUEQgAAACMY",
//记得更换token token有效时间2h
    headers: {
        "Content-Type": "application/json",
        "Content-Length": data.length
    }
};
var req = http.request(options, function (res) {
    res.setEncoding("binary");
  var imgData = "";
  res.on('data', function (chunk) {
      imgData += chunk;
  });
  res.on("end", function () {
      fs.writeFile("./wx_liteQR.jpeg", imgData, "binary", function (err) {
            if (err) {
                console.log("down fail");
            }
            console.log("down success");
        });
    });
});
req.write(data);
req.end();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • 小程序获取小程序码提供了三个接口 接口A: 适用于需要的码数量较少的业务场景 接口地址: POST 参数说明(先写...
    人类进化又没带我阅读 13,392评论 5 3
  • 给提问的开发者的建议:提问之前先查询 文档、通过社区右上角搜索搜索已经存在的问题。 写一个简明扼要的标题,并且...
    极乐叔阅读 13,729评论 0 3
  • 夏天过去了,暑假过去了。 时光是一去不复返的河流,但我想用文字留住这个忙碌而充实的暑假。最值得记的,就属学...
    如诗晴天阅读 232评论 2 3
  • 在2016年底,和同学一起回顾了一整年的计划,得到的结果异常惨烈,几乎没有任何收获。 痛定思痛,决心在2017年踏...
    拳拳阅读 219评论 0 0