微信小程序生成二维码

微信小程序生成二维码

官网api

先请求得到access_token

wx.request({

url: "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="1234"&secret="123", 


method: 'POST',

header: {

"Content-Type": "application/json"

//'content-type': 'application/x-www-form-urlencoded'

},

success: function (res) {

console.log(res.data.access_token)

    that.setData({

access_token: res.data.access_token,

})

fail: function (error) {

console.log(error)

}

})

 

请求url后面的参数值

微信小程序生成二维码_第1张图片

 

获取二维码

wx.request({

url: "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + res.data.access_token,

method: 'POST',

data: {

//width: 500,//生成二维码图片大小,越大,越清晰

scene: "123",//scene:activeId值视项目而定scene = decodeURIComponent(query.scene)

page: "pages/addTask2/addTask"    //这个路径一定是要发布的,要不会报错

},

responseType: 'arraybuffer', //设置响应类型

success: function (res) {

console.log(res)

var src = wx.arrayBufferToBase64(res.data)   //buffer转成string 

that.setData({

QRcodeSrc: src

})

},

fail: function (error) {

console.log(error)

}

})

在进行发布的时候要记得把该路径加入白名单,要不点击会没反应或者生成不出来

微信小程序生成二维码_第2张图片

请求url后面的res.data.access_token是第一个请求获取到的

如果请求成功获取的res.data是如下格式就证明请求成功了

微信小程序生成二维码_第3张图片
demo代码

gainQRCode:function(){

var that = this;

wx.request({

url: "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx1231321321389&secret=wb123912831382139",

method: 'POST',

header: {

"Content-Type": "application/json"

//'content-type': 'application/x-www-form-urlencoded'

},

success: function (res) {

console.log(res.data.access_token)

that.setData({

access_token: res.data.access_token,

//openid: sessionUser.openid

})

wx.request({

url: "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + res.data.access_token,

method: 'POST',

data: {

//width: 500,//生成二维码图片大小,越大,越清晰

scene: "123",//scene:activeId值视项目而定scene = decodeURIComponent(query.scene)

page: "pages/addTask2/addTask"

},

responseType: 'arraybuffer', //设置响应类型

success: function (res) {

console.log(res)

var src = wx.arrayBufferToBase64(res.data)

that.setData({

QRcodeSrc: src

})

},

fail: function (error) {

console.log(error)

}

})

},

fail: function (error) {

console.log(error)

}

})

最后再wxml使用

 

如果要直接可以在这里处理一下

微信小程序生成二维码_第4张图片

你可能感兴趣的:(微信小程序,知识总结)