关于微信小程序 “扫普通链接二维码打开小程序”动态传递多个参数开发过程记录与总结

前言:项目中需要线下 扫描二维码 进入到小程序指定的页面,二维码中 要动态传递多个参数,接下来看看具体怎么实现,整个过程还比较顺利,特把整个过程中遇到的坑点做以总结。

快速跳转官网文档介绍:扫码打开小程序接入指南

开发前相关配置

首先按照官方文档我们先做好配置工作,配置流程如下:

小程序后台配置-开发管理-开发设置-扫普通链接二维码打开小程序

开发过程中配置,举个例子:假如我们二维码的地址是:

https://dev.xxx.com/goodsClassify?brandId=64

brandId 就是我们要动态传递的参数

这里注意  下载效验文件,效验文件要放到 https://www.xxx.com/QUIGNQWuhh.txt下,并确保可以访问,可以访问了才能生成规则,开发版我一直接收不到动态参数,这里我选的体验版,体验版在小程序后台成员管理中要维护相应的 体验成员账号。测试账号可以先传几个 固定的brandId码进行测试。

体验版中一定要注意:没有在测试链接维护的账号生成的二维码是扫不出来的。也就是如下图配置的测试链接中brandId配置了52和64,只有这两个扫出来才能进入小程序,brandId如果没在这里配置,扫码就会去对应dev.xxx.com的主页去了,体验版就是这样的,等小程序发布到线上,brandId是任意值就都可以进小程序了

开发调试

 生成好规则,上传完代码,这个时候 用测试链接中的地址生成二维码已经可以跳转到小程序了。这里已经成功了一半。接下来就是拿参数了,因为我们的小程序使用uni-app开发的,这里我主要讲在uni-app中接收参数,扫码进来后在跳转的页面 通过option接收参数,

如下:

async onLoad(option) {
			console.log("[goodsClassify -> option]", option);
			// 扫码发布
			if( option.q && option.q != "undefined" ){
				const qrUrl = decodeURIComponent(option.q) 
				//此处就是我们要获取的参数 json,通过方法解析
				let jsonUrl = this.GetwxUrlParam(qrUrl);
				this.brandId = jsonUrl.brandId;
				return;
			}
			// 本地模拟调试
			if (option && Object.getOwnPropertyNames(option).length) {
				this.brandId = option.brandId;
			}
		},


//解析链接地址
			GetwxUrlParam(url) {
				let theRequest = {};
				if(url.indexOf("#") != -1){
					const str=url.split("#")[1];
					const strs=str.split("&");
					for (let i = 0; i < strs.length; i++) {
						theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);
					}
				}else if(url.indexOf("?") != -1){
					const str=url.split("?")[1];
					const strs=str.split("&");
					for (let i = 0; i < strs.length; i++) {
						theRequest[strs[i].split("=")[0]] = decodeURI(strs[i].split("=")[1]);
					}
				}
				return theRequest;
			},

解释:需要解码一下  通过 decodeURIComponent 进行解码后为:

https://dev.xxxxx.com/goodsClassify?brandId=xx 就是二维码的链接,然后我们只需要通过字符串解析拿到参数就行了jsonUrl.brandId

备注提醒(再提醒一遍)


最后也是很重要一点,我提交代码到体验版,发现只有 测试链接中的配置地址才能跳转到小程序,只要改变brandId的值,就跳转不进去了。最后发现,只有在线上正式版才会生效。也就是说,这块不用管,调试完成后,代码审核发布,审核发布后记得:把规则修改为线上版,然后发布规则就可以了。这个时候我们发现brandId可以随意传值,都能跳转小程序了。切记,只有代码和规则发布后才能生效。

所以总结下:体验版-只有测试链接中的地址会生效,线上版-规则才会全部生效。

添加好友备注【进阶学习】拉你进技术交流群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/331510.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】二叉树(遍历,递归)

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​​​ 目录 二叉树遍历规则 前序遍历 ​…

Pure-admin框架 Pure-table中获取所选中的内容的信息

最近在尝试使用Pure-admin框架来进行开发&#xff0c;正好遇到了多选表格需要获取选中项的id的情况&#xff0c;因为平台介绍说是二次封装 element-plus 的 Table &#xff0c;直接拿el-table的方法来试 在table上设置属性ref"multipleTableRef" let idArr [];mult…

使用Python的pygame库实现下雪的效果

使用Python的pygame库实现下雪的效果 关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 先给出效果图&#xff1a; 源码如下&#xff1a; import pygame import random# 初始化pygame pygame.init()# 设置屏幕尺寸 width…

C# 线程间操作无效: 从不是创建控件的线程访问它--多线程操作

我们在用线程操作的时候&#xff0c;可能会出现异常&#xff1a;线程间操作无效: 从不是创建控件richTextBox1的线程访问它。因为windows窗体控件不是线程安全的&#xff0c;如果几个线程操作某一控件的状态&#xff0c;可能会使该控件的状态不一致&#xff0c;出现争用或死锁状…

springBoot项目打包发布

打包 项目代码编写完成后&#xff0c;在pom.xml文件中引用打包的插件&#xff1a; <!-- 打包插件坐标--><build><plugins><!--打包插件--><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-mave…

洗地吸拖一体机什么牌子好?性能超好的洗地机推荐

科技时代的快速发展带来了大量智能清洁家电&#xff0c;其中近年兴起的洗地机为我们的生活带来了极大便利。然而&#xff0c;市面上涌现出众多品牌和型号的洗地机&#xff0c;让人眼花缭乱&#xff0c;难以做出选择。笔者在这里推荐几款性能超好的洗地机推荐&#xff0c;希望能…

137基于matlab的面和线接触的滑块润滑

基于matlab的面和线接触的滑块润滑&#xff0c;基于有限差分法求解面接触滑块润滑的油膜厚度、油膜压力&#xff0c;输出三维可视化结果。程序已调通&#xff0c;可直接运行。 137 matlab油膜压力油膜厚度 (xiaohongshu.com)

在机关单位上班的你,需要掌握这些网络安全知识!

没有网络安全&#xff0c;就没有国家安全。网络安全和保密防护&#xff0c;是机关单位日常工作中不可忽视的重要问题。尤其在涉密单位工作的人员&#xff0c;因工作性质特殊&#xff0c;不仅要了解非涉密网络的安全操作常识&#xff0c;更要重点了解涉密网络的规范行为要点&…

linux docker-compose安装失败解决

1.去github下载到本地 https://github.com/docker/compose/releases/ 2.上传到linux 服务器 mv dokcer-compose-linux-x86_64 /usr/loacal/bin/docker-compose 3.给权限 chmod x /usr/local/bin/docker-compose 4.查看是否安装成功 docker-compose -version 5.卸载 …

鸿蒙原生应用/元服务实战-AGC团队账户

多人及内外结合去开发运营鸿蒙原生应用元服务时&#xff0c;需要用到团队账户&#xff0c;AGC提供了强大的团队角色与权限分工能力。 团队帐号是开发者联盟为实名开发者提供的多个成员帐号登录与权限管理服务。当前团队帐号支持成员参与应用市场&#xff08;付费推广、应用内付…

【Git相关问题】修改代码提交push时的用户名字

最简方法如下&#xff1a; 直接修改Git的用户配置文件 .gitconfig&#xff0c;这个配置文件的路径一般是 C:\Users\本机用户名\.gitconfig 用记事本或编辑器打开&#xff0c;在[user]下即可修改用户名name或邮箱email 参考&#xff1a; 使用Git进行版本控制&#xff0c;不同…

如何实现固定公网地址远程访问本地部署的Termux MySQL数据库

文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前言 Android作为移动设备&#xff0c;尽管最初并非设计为服务器&#xff0c;但是随着技术的进步我们可以将Android配置为生产力工具&#xff0c;变成一个随身…

实验一 安装和使用Oracle数据库

&#x1f57a;作者&#xff1a; 主页 我的专栏C语言从0到1探秘C数据结构从0到1探秘Linux菜鸟刷题集 &#x1f618;欢迎关注&#xff1a;&#x1f44d;点赞&#x1f64c;收藏✍️留言 &#x1f3c7;码字不易&#xff0c;你的&#x1f44d;点赞&#x1f64c;收藏❤️关注对我真的…

(C语言)冒泡排序

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现buble_sort函数&#xff1b; void buble_sort(int arr[], int sz) {//初始化变量值&#xff1b;int i 0;//嵌套循环冒泡排序&#xff1b;//外层循环&…

Mybatis面试题(一)

MyBatis 面试题 1、什么是 Mybatis&#xff1f; 1、Mybatis 是一个半 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;它内部封装了 JDBC&#xff0c;开发时只需要关注 SQL 语句本身&#xff0c;不需要花费精力去处理加载驱动、创建连接、创建statement 等繁杂的过程…

LeetCode 104. 二叉树的最大深度

104. 二叉树的最大深度 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1…

Comdlg32.dll文件丢失怎么?Comdlg32.dll修复方法

很用人在打开软件或游戏的时候&#xff0c;电脑会弹出对话框“程序无法运行&#xff0c;因为Comdlg32.dll文件找不到&#xff0c;请尝试重新安装程序已解决问题”&#xff0c;这是怎么回事呢&#xff1f; 首先&#xff0c;我们先来了解“Comdlg32.dll文件”是什么&#xff1f; …

配置zabbix监控平台

目录 内容纯手敲&#xff0c;难免有误&#xff0c;若发现请私信我。 配置zabbix监控平台 一、进入官网 ​编辑​ 二、配置zabbix-server&#xff08;服务端&#xff09; 1.下载zabbix的yum源 2.安装Zabbix服务器、前端、代理 3.安装Zabbix前端 4.编辑文件/etc/yum.rep…

【vue】ant-col多列栅格式的表单排列方式布局异常:

文章目录 一、效果&#xff1a;二、解决&#xff1a;三、问题&#xff1a; 一、效果&#xff1a; 二、解决&#xff1a; 在row中添加布局类型&#xff1a;type“flex” 三、问题&#xff1a; 后期正式环境还是存在该问题 >>>.ant-form-item {max-height: 32px; }多…

【MATLAB基础绘图第19棒】绘制小提琴图

MATLAB绘制小提琴图 小提琴图&#xff08;Violin Plot&#xff09;案例1&#xff1a;基础绘制参考 小提琴图&#xff08;Violin Plot&#xff09; 小提琴图&#xff08;Violin Plot&#xff09;可用于展示多组数据的分布状态和概率密度。 出自论文-J2020-Drought hazard trans…