一、说明

小程序获取二维码常用接口B

https://api.weixin.qq.com/wxa/getwxacode?access_token=ACCESS_TOKEN

指定小程序AccessToken ,指定二维码参数 使用 Post方式提交就返回二维码图片 

二、获取小程二维码步骤

1.获取access_token

小程序的token获取和公众号获取token方式一样,指定appid和appSecret就可以了。

这一步本文档省略。

2.指定 access_token 和二维码参数 调用接口

两种方式:

一种后台获取二维码处理,返回图片链接或DataURL ,推荐使用这种方式

一种使用 wx.request() 前台直接调用返回处理图片,这种方式需要配置请求域名白名单添加api.weixin.qq.com

本文介绍第二种操作:

1.指定参数请求数据,返回二进制数据字符串

  var link = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + token;
var param = {
scene:id,
page: page,
width:300,
auto_color:false,
is_hyaline:false
};
wx.request({
url: link,
method:'post',
header:{
'content-type':'image/jpeg'
},
responseType:'arraybuffer',
data:param,
success:res=>{
if(onSuccess)
onSuccess(res.data);
}
})

2.处理二级制字符串,读取成DataURL格式用于显示

var blob = new Blob([data], {
type: 'text/plain'
});
//将二进制读取成DataURL
var reader = new FileReader();
reader.onload = function () {
_this.setData({
tempPath: reader.result
});
}
reader.readAsDataURL(blob);

wxml:

 <image src='{{tempPath}}' mode='widthFix'></image>

显示结果: