【uniapp微信小程序】扫普通链接二维码打开小程序

发布于:2025-09-13 ⋅ 阅读:(17) ⋅ 点赞:(0)

需求:用户A保存自己的邀请码海报,用户B扫描该普通连接二维码,打开微信小程序,并且携带用户A的邀请码信息,用户B登录时,跟用户A关联,成为用户A的下级。
tips:保存海报到手机相册可以参考另一篇帖子:小程序保存海报到手机相册

一、小程序后台配置普通二维码的链接

官方文档指南
比如要生成二维码的链接是 https://example.com/ceshi?inviteCode=Haaaa123 (其中参数inviteCode是动态的),以下就用该链接举例子:

1. 配置业务域名

登录微信公众平台,进入「开发」-「开发管理」-「开发设置」,在「业务域名」中配置二维码跳转链接的域名。需下载校验文件并放置在域名根目录下完成验证。这里把要 转成普通二维码的链接域名配上去 https://example.com
在这里插入图片描述

2. 配置普通链接二维码规则
(1)开发版本或者体验版本:一般用于测试使用;

在这里插入图片描述
注:

  • 二维码规则最后面不能带 / ,否则生成的二维码扫描之后打不开小程序;
  • 二维码规则的域名一定要配置过校验文件;
  • 小程序功能页面:填写的哪个页面路径,就要在哪个页面代码里接收参数;
  • 体验版要配置测试链接,并且体验版只能固定测试链接里面配置的几个参数,不能动态,发布之后才能动态传参!

在这里插入图片描述

(2)线上版本:小程序发布后,再发布该规则,线上版本使用;

注: 必须小程序先发布代码,然后才能发布配置的规则,规则发布后,测试链接就可以不用配置了,可以动态的传任何参数;
在这里插入图片描述

二、用户扫码打开小程序并跳转到指定页面

1. 扫码打开小程序

用户扫描指定链接生成的二维码即可打开小程序 推荐一个二维码生成器 ,这里是测试,代码里一般调接口,接收后端返回的由动态参数生成的base64或者图片。
在这里插入图片描述

2. 小程序内部接收参数

在指定页面 (上面配置规则时是 pages/index/index 页面,则在首页接收参数),拿到参数后存起来,登录时作为参数传给后端,作为用户A邀请用户B的标识。

onLoad(options) {
	console.log(options, 'options');
	// 扫描普通二维码链接打开小程序
	if(options.q){
		const q = decodeURIComponent(options.q) // 获取到二维码原始链接内容
		let params = this.getUrlParams(q)
		let inviteCode = params.inviteCode
		uni.$u.vuex("$inviteCode", inviteCode)
	}
},

网站公告

今日签到

点亮在社区的每一天
去签到