小程序爬坑——扫码进入程序参数获取 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

小程序爬坑——扫码进入程序参数获取

发表时间:2021-3-31

发布人:葵宇科技

浏览次数:49

官方-获取二维码

情景描述

用户以各种姿势,扫码,长按识别和手机相册选取小程序码进入程序。
然后做一次统计。
统计需要:进入情景,url相关id参数

背景

生成小程序码由后端提供

问题

以下是在开发者工具获取所写代码和入口配置。

set.png
Page({
onLoad: function(options) {
// options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
var scene = decodeURIComponent(options.scene)
//
var query = options.query.dentistId // 3736
}
})

相关逻辑写好了,但是在发布之后的测试中,都指向了一个问题。

无法获取url上的参数
也经过体验版的测试。输入url为pages/dentist/index?dentistId=3736,无奈只好找后台小哥帮助,最后确实是没有。参数以另外的一种形式传递过来了。

如果你看到这了,还没鄙视在下。那么我们一起去看文档吧,逃~
官方-获取二维码

接口A: 适用于需要的码数量较少的业务场景 :
注意:通过该接口生成的小程序码,永久有效,数量限制见文末说明,请谨慎使用。用户扫描该码进入小程序后,将直接进入 path 对应的页面。

see?
方式A,需要后台直接配置好路径,扫码之后直接进入对应的页面。
也是就是说:就算app.json 配置的首个路径是默认的index,只要生成小程序码的时候,配置为pages/dentist/index就即可。所以,聪明的你应该知道了在这了加上参数?dentistId=3736,才可以从query取到值。
再注意:path长度有限制。

接口B:适用于需要的码数量极多,或仅临时使用的业务场景
注意:通过该接口生成的小程序码,永久有效,数量暂无限制。
用户扫描该码进入小程序后,开发者需在对应页面获取的码中 scene 字段的值,再做处理逻辑。
使用如下代码可以获取到二维码中的 scene 字段的值。调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟,开发工具模拟时的 scene 的参数值需要进行 urlencode

方式B,也就是后台同学使用的方式。测试阶段的取值,是利用query模拟的。

测试.png


生产环境是为在options.scene
所以这个是需要注意的
// options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
小程序码带的参数都是在scene上面。

// 这是首页的 js
Page({
onLoad: function(options) {
// options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene
var scene = decodeURIComponent(options.scene)
}
})


相关案例查看更多