首选区分通过什么途径获取小程序码
这里选为后端生成
先通过小程序secret
和appid
生成access_token
,获取access_token
凭证用于生成小程序码。
然后通过小程序接口,传入刚才生成的access_token
,另外带上其它参数,用于生成小程序码。
通常在生成小程序码后需要携带参数,所以在生成小程序码时,需要设置scene
字段,该字段用于携带参数。
根据上述的流程,微信接口会返回二进制小程序码通过该码可以直接生成图片,你也可以将二进制数据转为file
存到oss
服务器,然后oss
返回url
链接返回给前端渲染。
前端通过url
链接渲染图片或下载图片。
扫码进入小程序,在小程序的App
生命周期onLoad
中,调用decodeURIComponent
获取小程序码参数。
在原生微信开发中在onLoad
中获取
Page({
onLoad (query) {
// scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
const scene = decodeURIComponent(query.scene)
}
})
uniapp
则是在onLaunch
中获取,并且uniapp
的query
参数会多套一层
onLaunch: function(query) {
// scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
const scene = decodeURIComponent(query.query.scene)
console.log('小程序码', scene);
console.log('进入小程序', query);
},
如果不是通过扫码进入,那么获取scene
为undefined
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。