一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面

这篇具有很好参考价值的文章主要介绍了一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近公司研发自己的一个小程序,因为是线下树牌,涉及到扫码这个问题,但是扫码又分三个端,浏览器扫码,微信扫一扫,支付宝扫码,做这个需求也是遇到了很多坑,在此记录一下

1.扫码进入微信小程序

首先登录微信公众平台,链接

https://mp.weixin.qq.com/

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 原本此处会有一个生成 URL Scheme 码,但是好像现在已经去掉了,小程序里面没有显示这个,也是试了好多的方法,结果都不可行,下面说一下我的实现步骤吧

1.1 登录到后台后首先找到开发管理->开发设置

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 1.2 服务器域名是一定要添加的

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 1.3 往下滑 会看到一个扫普通二维码打开小程序,微信小程序扫码具体实现就是在这

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 

 1.4 配置普通二维码链接 点击右上方添加按钮后进入此页面,测试范围,开发版本,体验版本,线上版本这个不用多说了

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 1.5 配置完成后,复制你的测试链接,去一个生成二维码的网站,比如测试二维码,测试扫描就可以了,废话不多说,直接上代码获取了,支付宝的先忽略,后面再细说,获取微信二维码链接参数数据,在你跳转的小程序页面onLoad的里面获取,就可以取到一个二维码链接,但是你需要解码一下,传过来的时候是个乱码的,然后就可以取你的参数了

onLoad(option) {
	    	let qrCode = getApp().globalData.qrCode;
			if (qrCode){
				//支付宝扫描二维码进来的
				const qramas = decodeURIComponent(qrCode)
				this.goTreeDetail(qramas)
				console.log(qramas,"打印q的传参")
			}
			 if(option.q) {
				const params = decodeURIComponent(option.q)
				this.goTreeDetail(params)
			}else {
				this.platform=this.$platform;
				this.FormData.id = option.id;
				this.getData();
				this.url=this.domainContext
				wx.showShareMenu({
					withShareTicket: true,
					menus: ["shareAppMessage", "shareTimeline"],
				});
			}
			
        },

2.支付宝二维码,他的配置是一样的,登录支付宝开放平台即可

https://auth.alipay.com/login/ant_sso_index.htm?goto=https%3A%2F%2Fopen.alipay.com%2Fdevelop%2Fmanage

2.1 跟微信小程序配置操作基本一样,这地方就不多说了

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 

2.2  他们两个的获取参数有些区别

支付宝小程序获取参数只支持在app.vue中的onLanuch中获取,这样也大大区分了与微信小程序的获取出处,这一点比较好

App.vue

onLaunch: function(options) {
			console.log(options,"打印获取二维码参数")
			console.log(JSON.stringify(options),">>>>>>>>>>>>>>>")
			 if(options.query && options.query.qrCode){
				this.globalData.qrCode =  options.query.qrCode
			}
		},

内部页面 

可通过uniapp全局方法getApp获取全局参数,来在内部页面赋值,这样就可获取了,然后这地方是有问题的,支付宝开发工具直接测试是没效果的

参考转载他人链接:支付宝小程序开发——如何获取支付宝小程序页面的https链接 - 逍遥云天 - 博客园 (cnblogs.com)

		onLoad(option) {
			let qrCode = getApp().globalData.qrCode;
			if (qrCode){
				//支付宝扫描二维码进来的
				const qramas = decodeURIComponent(qrCode)
				this.goTreeDetail(qramas)
				console.log(qramas,"打印q的传参")
			}
			
		},

3.浏览器扫码

3.1  因为我们当时的需求就是,二维码的链接不是?id形式来进行传参的,是以斜杠结尾的,但是这就无法直接访问h5页面了,于是我的操作方法就是新建了一个项目,然后打包成h5部署到服务器上,然后通过nginx直接到我的部署的静态目录页面,完成浏览器扫码跳转h5,这个就不详细多说了,非常简单,但是要记住,要是和我们一样的话,运行基础路径要跟你后端生成二维码链接里面的是一致的哦

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 4.h5跳转微信小程序,支付宝小程序(这个地方我做的并不是很完美)

h5跳微信小程序方法有很多  云函数,公众号绑定等等····

说一下我用的吧

1.我使用的是后端调取微信客户端一个API进行跳转的,这个的利处就是简单方便,弊处就是这生成的码点击后,其他人便不能点击了,再就是好像不能指定跳转(这个我没有深入研究),但是我是点击请求接口打开的,目前没有什么问题,且已经实现项目需求

获取scheme码 | 微信开放文档 (qq.com)

一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面,微信小程序,小程序,微信,html5,javascript

 2.h5跳转支付宝小程序

这个是最简单的,微信的开发比较成熟,自然跳转的时候比较麻烦,支付宝的跳转只需要像上方图片那样直接跳转然后拼上你想去跳转的页面,然后后面想传的参数啥的就可以了,就可以直接实现跳转支付宝小程序了

以上就是我这次项目中开发所用的方法,问题已解决,不管怎么说记录一下自己的成长吧

其实扫码还有一种方式:后端判断请求头header判断扫码客户端是啥,返回对应二维码链接也应该是可以的吧,前端小白,正在努力学习,有错误各位大佬及时指正,不喜勿喷谢谢,再见啦,喜欢记得点点赞~~

二维码就不发上来了,我怕被轰炸,效果确实实现了哈文章来源地址https://www.toymoban.com/news/detail-717502.html

到了这里,关于一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何生成微信小程序二维码,小程序内页二维码

    你自己得有个微信公众号,只需要知道小程序的名字就可以了 生成小程序二维码 第一步编辑素材 第二步搜索小程序名字,然后回车,下一步 第三步选小程序码 小程序内页二维码 第一步编辑素材 第二步搜索小程序名字,然后回车,下一步 第三步点击‘获取更多路径’ 第四

    2024年02月15日
    浏览(46)
  • 【微信小程序二维码配置】微信公众平台配置二维码,小程序测试二维码,小程序动态二维码,然后扫码打开对应页面进行操作

    微信公众平台地址:微信公众平台 选择 开发管理 – 开发设置 – 扫普通链接二维码打开小程序 配置项 二维码规则: URL 为内含下载校验文件的服务器 URL , 可以加二级,比如我的 https://*** /preview , 二级随便写什么都可以 测试链接(选填): 匹配二维码规则地址,后加 *** 参数, 因

    2024年01月19日
    浏览(65)
  • 微信小程序显示二维码

    在请求接口的success下面写入这段代码。 在他的上一个请求数据的打他下面创建一个空的用于存放数据的东西比如obj:\\\" \\\"用于存放数据。 将它放到一个一个点击事件中,通过触发点击事件执行代码 如果窒息看代码的话const tupian 这个变量让他等有一张网络图片。 这段代码是使

    2024年02月11日
    浏览(48)
  • 微信小程序 — 生成二维码功能

    微信小程序实现生成二维码功能。需要用到canvas组件,设置 type为2d.  需要使用js包 weapp-qrcode-canvas-2d https://github.com/DoctorWei/weapp-qrcode-canvas-2d weapp-qrcode-canvas-2d 是使用新版canvas-2d接口在微信小程序中生成二维码(外部二维码)的js包。canvas 2d 接口支持同层渲染且性能更佳,可大

    2024年02月09日
    浏览(56)
  • 微信小程序——二维码推广海报

    😊博主:小猫娃来啦 😊本文核心: 本地图片和接口返回二维码制作一体化canvas海报 在微信小程序中,我们使用 canvas 标签来创建一个画布 wxml 文件: 确立基本样式 wxss文件: 我们先使用 wx.createCanvasContext 创建一个 canvas 的上下文对象,然后通过调用 drawImage 方法分别绘制背

    2024年02月16日
    浏览(59)
  • 微信小程序之生成二维码

     var context = wx.createCanvasContext(\\\'mycanvas\\\'); // 获取画布 CanvasContext.fillText string text 在画布上输出的文本 number x 绘制文本的左上角 x 坐标位置 number y 绘制文本的左上角 y 坐标位置 number maxWidth 需要绘制的最大宽度,可选 CanvasContext.drawImage string imageResource 所要绘制的图片资源(网络

    2024年02月10日
    浏览(45)
  • 微信小程序中长按识别二维码

    属性 类型 默认值 必填 说明 show-menu-by-longpress boolean false 否 长按图片显示发送给朋友、收藏、保存图片、搜一搜、打开名片/前往群聊/打开小程序(若图片中包含对应二维码或小程序码)的菜单。 支持长按识别的码 ✅ 小程序码 ✅ 微信个人码 ✅ 企业微信个人码 ✅ 普通群码

    2023年04月15日
    浏览(38)
  • 微信小程序使用--如何生成二维码

    一、生成二维码 1.获取token 参照官方文档说明: https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-access-token/getAccessToken.html 其中grant_type是写死的,appid和secret是注册小程序的时候获取的,然后会得到一个默认两小时失效的token 2.获取二维码 参照官方文档说明: https://developers.

    2024年02月04日
    浏览(55)
  • 微信小程序生成二维码的 方式

    一:生成普通的二维码 https://open.weixin.qq.com/sns/getexpappinfo?appid=xxxpath=xxx?a=123 appid:小程序的appid path: 小程序的路径 a:小程序需要携带的参数,不传可以不写 二:在微信开发文档内生成 步骤1.登录微信公众平台 2.找到工具菜单 3.选择生成小程序码 具体里面的有生成规则,不懂得

    2024年02月12日
    浏览(50)
  • 微信小程序实现预约生成二维码

    业务需求 :点击预约按钮即可生成二维码凭码入校参观~ 如下是博主自己写的wxml: 以及wxss: 去Gitee下载工具包: 二维码工具包 http://​ https://gitee.com/WeiDoctor/weapp-qrcode-canvas-2d ​ 下载zip:     将dist文件夹中的js文件全部复制到utils目录下: 如下代码必须完整的导入再页面

    2024年04月15日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包