微信小程序云函数生成二维码
首先,需要给对应的云函数安装 request-promise 依赖。(不会给云函数安装依赖的盆友请移步 微信小程序中的云开发如何使用npm安装依赖)
生成二维码的云函数如下:
// 云函数入口文件
const cloud = require('wx-server-sdk')
const rp = require('request-promise')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
const page = event.page
const scene = event.scene
//appid和秘钥
const appid = '***',
secret = '***';
const AccessToken_options = {
method: 'GET',
url: 'https://api.weixin.qq.com/cgi-bin/token',
qs: {
appid,
secret,
grant_type: 'client_credential'
},
json: true
};
//获取AccessToken
const resultValue = await rp(AccessToken_options);
const token = resultValue.access_token;
//获取小程序码配置
const code_options = {
method: 'POST',
url: 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + token,
body: {
'page': page,
'width': 430,
'scene': scene
},
json: true,
encoding: null
};
//获取二进制图片
const buffer = await rp(code_options);
const upload = await cloud.uploadFile({
cloudPath: 'wxacode.png',
fileContent: buffer,
})
return {
wxacodefileID: upload.fileID
}
}
页面内调用:
wx.cloud.callFunction({
name: "getQRCode",
data: {
page: 'pages/xxxxx/index', // 必须是已经发布的小程序存在的页面(否则报错)
scene: 'from=mp' // 最大32个可见字符
},
success(res) {
console.log(res)
},
fail(err) {}
})
- 随机文章
- 热门文章
- 热评文章
- Font Awesome 一套绝佳的图标字体库和CSS框架(奥森图标)
- C#图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果)
- 永恒之蓝病毒是什么 怎么防范ONION勒索软件
- Linux下python2.7安装pip
- C#修改图片分辨率
- HTTP请求头详解
- C#实现邮件发送的功能
- 开关电源拓扑结构概述(降压,升压,反激、正激)

