微信H5页面点击直接跳转app-微信开放标签

开发微信H5项目时,需要从h5直接跳转至app,绞尽脑汁调研一番后,发现微信开放标签能实现,but 环境配置和测试流程真的很复杂,真的配置四小时,开发仅需30分钟,经过不断踩坑终于上线,踩过的坑都给你们总结出来啦,如果能帮助到你,帮忙点赞收藏关注一下吧。

1. 环境配置

准备工作

  1. 申请微信服务号(公众号中的服务号);
  2. 服务号完成认证
  3. 增加js安全域。

增加js安全域
需要在微信开放平台(https://open.weixin.qq.com/)和微信公众号两个地方配置。
注意点:

  1. 两个域名必须相同。两个域名必须相同 。两个域名必须相同 。域名不能带路径。域名不能带路径。域名不能带路径。
  2. 微信开放平台需添加要跳转的app的id;
  3. ip白名单需要加所有公网地址;ip白名单需要加所有公网地址;ip白名单需要加所有公网地址。暂时只能增加ip,公网ip附录在下面 ,如有更新,请以最新的为准。
  4. 没有配置成功的时候 wx-open-launch-weapp 内的插槽节点不会有任何样式;没有配置成功的时候 wx-open-launch-weapp 内的插槽节点不会有任何样式;没有配置成功的时候 wx-open-launch-weapp 内的插槽节点不会有任何样式 如下图:
    在这里插入图片描述

测试
把线上地址代理到测试地址。域名不能带端口 所以无法不能增加测试地址。在生成signature的时候 需要在服务端写死线上地址。

调试
尽量多输出错误log信息 判断是哪里出错
在这里插入图片描述

常见错误以及处理方法:

  1. 标签无法渲染 此时检查是否配置成功微信公众号 + 微信开放平台 js安全域名需要 未根域名且相同;页面必须在域名下比如配置 baidu.com 那访问页面需要为 baidu.com/xxx/xxx/xxx
  2. 点击提示fail_check; 此项多为 js安全域名需要为跟域名 比如 baidu.com ;

参考资料:
微信开放标签: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html

权限失败 fail_check:
https://developers.weixin.qq.com/community/develop/doc/0006023c71c5a81e233b1277252000?_at=1652247480330

在这里插入图片描述

开发

终于配置完成到了开发阶段,环境配置OK后,开发阶段很简单。

  1. html文件里引入
    <script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
  2. 使用此标签前必须要 Vue.config.ignoredElementse 忽略在 Vue 之外的自定义元素 否则它会自动把微信开放标签解析为一个组件 然而你也没有引入 并在component注册 就会报错 。
    a. 所以首先需要Vue.config.ignoredElementse 忽略微信开放标签, 引入微信sdk即可使用 特点是它只会被微信识别
    b. 代码:Vue.config.ignoredElements = [‘wx-open-launch-app’];
  3. 接入微信jssdk,需前期准备ready!!!,参考【环境配置】环节, 里面的 appId, timestamp, nonceStr, signature由服务端返回,服务端加密方式参考https://www.jianshu.com/p/8300490c52e1

前端代码:

 // 配置jssdkwx.config({debug: false, // 测试时可开启查看是否配置成功appId,timestamp,nonceStr,signature,openTagList: ['wx-open-launch-app'],jsApiList: ['', ''] // 必须,里面两个值不用相同});// 接入配置失败wx.error(res => {// 配置失败处理});// 页面<wx-open-launch-appid="wechat-launch-btn"appid="" // 要跳转到的移动应用的appid,需在微信开放平台配置style="width: 100%; height: 100%; background: transparent; position: absolute; bottom: 0px; left: 0px;z-index:10001;"extinfo="" // 要跳转到的url><script type="text/wxtag-template"><style>.btn {background: transparent;}</style><div class="btn" style="width: 100%; height: 100%; position: absolute; bottom: 0px; left: 0px;"></div></script></wx-open-launch-app>// jsthis.$nextTick(() => {const btn = document.getElementById('wechat-launch-btn');if (btn) {btn.addEventListener('launch', function (e) { // 成功调起console.log('launch', e.detail, e);});btn.addEventListener('ready', function (e) {// 准备调起console.log(e, 'ready', e.detail);});btn.addEventListener('error', e => { // 调起失败console.log('fail', e.detail, e);});}});

本地测试

  1. 服务端配置为线上环境,前端将线上环境代理到本地访问;
  2. 设置代理:
    a. 抓包工具里设置代理,、如将https://local.baidu.com:9000代理到local.baidu.com:3000,手机上链接抓包工具后,访问代理到的https服务即可测试微信开放标签,如https://local.baidu.com:9000;
  3. 只有在前期都ready后,才会触发微信开放标签正确跳转,可在接入微信jssdk时将wx.config中的debug改为true,开启调试模式,如果配置不成功,debug会弹窗提示错误信息,排查问题修复后会提示成功信息;
  4. 跳转时,如果没安装app,微信开放标签会提示找不到此app,需做兼容引导下载app;

总结不易,如果能帮助到你,帮忙点赞收藏关注一下吧,支持原创,转发请标明原创链接https://blog.csdn.net/weixin_43522687/article/details/126035548

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

微信浏览器跳转app解决方案

微信浏览器跳转app解决方案 新版本微信浏览器中&#xff0c;已禁用打开其他APP应用&#xff0c;只支持打开微信合作商 APP应用&#xff0c;所以无法通过微信浏览器直接唤醒其他APP应用。列举微信浏览器唤醒APP的2种解决方案&#xff1a; 方案一&#xff1a;通过Url 跳转到H5…

uniapp 微信授权,微信分享,微信支付,微信跳转app集成

更新提示 &#xff01;&#xff01;&#xff01;&#xff01; 更新提示 &#xff01;&#xff01;&#xff01;&#xff01; 更新提示 &#xff01;&#xff01;&#xff01;&#xff01; 在7.12号微信推出不能强制获取用户信息才能使用。再授权之前得明确告知用户。经过我的…

如何将两个微信小程序合并_微信小程序--如何在两个页面之间传值

先看一下本周的部分的设计图 在这里插入图片描述 在这里插入图片描述

注意力机制

注意力机制&#xff1a;我们会把我们的焦点聚焦在比较重要的事物上。 对于一个模型而言&#xff08;CNN、LSTM&#xff09;&#xff0c;很难决定什么是重要的&#xff0c;什么是不重要的&#xff0c;由此注意力机制诞生了。 对于一张热力图而言&#xff0c;我们不难发现人类的…

Python篇——数据结构与算法(第四部分:希尔排序及其讨论、计数排序、桶排序、基数排序)

1、希尔排序 希尔排序&#xff08;shell sort&#xff09;是一种分组插入排序算法首先取一个整数d1n/2&#xff0c;将元素分为d1个组&#xff0c;每组相邻两元素之间距离为d1&#xff0c;在各组内进行直接插入排序取第二个整数d2d1/2&#xff0c;重复上述分组排序过程&#xf…

手把手QQ机器人制作教程,根据官方接口进行开发,基于Python语言制作的详细教程(更新中)

第 1 课、注册 QQ 开放平台账户 QQ开放平台官方地址&#xff1a;https://q.qq.com/#/app/bot QQ开放平台包含&#xff1a;QQ机器人、QQ小程序、QQ小游戏&#xff0c;我们这边选择QQ机器人。 机器人类型&#xff1a;设置私域机器人或者公域机器人&#xff0c;当然公域机器人对…

【0基础QQ机器人开发】基于go-cqhttp的QQ机器人开发教程,仅供自学

文章目录 一、本文目的:二、实现历程:三、开发过程1.准备工作1.cq-http的下载地址:[Releases Mrs4s/go-cqhttp (github.com)](https://github.com/Mrs4s/go-cqhttp/releases)2.python环境的配置 2.程序配置3.python程序开发4.常用API拓展 API 及与 OneBot 标准有略微差异的 AP…

【最新】半小时教你制作出属于自己的QQ机器人【保姆级】

目录 前言QQ机器人功能展示一、安装nonebot2安装步骤建立一个新的机器人项目 二、安装go-cqhttp安装步骤修改配置 三、使用 前言 相信大家都有在QQ群见过QQ机器人&#xff0c;可以玩游戏、推送当日天气情况等。本文将基于nonebot2和go-cqhttp构建一个自定义的QQ机器人。 QQ机…

如何在linux上使用QQ(在终端上使用qq) mojo-qq

如何在linux终端上使用QQ 效果展示 介绍irc irc的历史非常悠久&#xff0c;那都是上个世界别人用来聊天的了&#xff0c;算是我接触到的最早的及时聊天 以下是来自google的简介 Internet Relay Chat (IRC) is an application layer protocol that facilitates communicatio…

QQ机器人

一、介绍 qqbot 是一个用 python 实现的、基于腾讯 SmartQQ 协议的 QQ 机器人&#xff0c;可运行在 Linux 、 Windows 和 Mac OSX 平台下。 本项目 github 地址&#xff1a; https://github.com/pandolia/qqbot 你可以通过扩展 qqbot 来实现&#xff1a; 监控、收集 QQ 消息自动…

实现一个QQ助手

一、准备工作 下载go-cqhttp&#xff0c;下载自己需要的版本&#xff0c;我是在ubuntu上搭建&#xff0c;我下载的是go-cqhttp_1.0.0-bata4_linux_amd64.deb 二、流程 2.1、生成配置文件 切换到下载路径&#xff0c;并执行如下命令&#xff1a; sudo dpkg -i go-cqhttp_1.0…

基于node.js和oicq的qq机器人 制作回顾分析笔记

目录 1 文章简介 2 项目介绍 3 qq机器人的登录部分 3.1 模块的调用 3.2 登录配置文件 3.3 登录部分 4. 普通非指令功能 4.1 自动复读 4.2 自助禁言 4.3 来点颜色 4.4 回复功能 5. 指令功能 5.1 删除图片 5.2 禁言 5.3 解除禁言 5.4 查看帮助 5.5 群白名单 5.6…

浙大知识图谱基础:学习笔记

0 基础知识 知识图谱中&#xff0c;知识的结构化表示主要有符号表示和向量表示两类方法。符号表示包括&#xff1a;一阶谓词逻辑&#xff0c;语义网络&#xff0c;描述逻辑和框架系统等。当前主要采用基于图的符号化知识表示&#xff0c;最常用的是有向标记图。 有向标记图分为…

识别在线视频中的歌曲并下载音乐

问题&#xff1a;视频中的歌曲觉得很好听&#xff0c;但又不知道是什么歌曲&#xff0c;如何解决&#xff1f; 1、在chrome商店中找到aha music 插件。 2、安装. 3、打开需要识别的视频网站&#xff0c;点击aha music按钮。 4、当找到该歌曲时&#xff0c;点击。 5、按F12 在…

小程序简单实现搜歌、听歌

这篇文章用了两个网易云音乐的接口&#xff08;不清楚是否是官方的&#xff09;&#xff0c;附上官方接口链接: 网易云音乐API / 本文所用接口&#xff1a; 1、http://musicapi.leanapp.cn/search 2、http://neteasecloudmusicapi.zhaoboy.com/song/url 效果图 相关代码如下 先…

java爬虫爬取音乐

以前写过一个音乐网站&#xff0c;我都是手动去下载音乐&#xff0c;并上传到网站&#xff0c;非常麻烦。 学习了HttpClinet和Jsoup 我决定完成一个简单的爬虫去收集音乐信息&#xff0c;并下载音乐&#xff1b; 先尝试做几个简单的小功能&#xff1a; 基本功能 1.根据歌曲…

计算机上面的音乐,电脑上如何识别音乐

电脑上如何识别音乐 我们都知道怎么在手机上使用软件来实现识别音乐的功能&#xff0c;但是在网上怎么识别呢。那么电脑上如何识别音乐呢?下面就让jy135小编来告诉大家吧&#xff0c;欢迎阅读。 首先打开midomi网站(http://www.midomi.com/) 见下图 点击网站上的“Click and S…

python音乐爬取

思路 本次爬取音乐使用reqursts模块&#xff0c;在安装此模块的基础上爬取音乐。 首先要获取抓包链接&#xff0c;这是一串网址&#xff0c;获取方法就是当你在浏览器界面播放音乐时打开开发者界面寻取。其次使用get()向服务器发送get请求 .content获取二进制数据。最后将此写入…

Spring AOP简介及相关案例

目录 一、Spring AOP简介 二、AOP相关术语 三、AOP入门案例 1. 引入依赖 2. 编写连接点 3. 编写通知类 4. 配置切面 5. 测试 四、通知类型 1. 编写通知方法 2. 配置切面 3. 测试 五、切点表达式 六、多切面配置 1. 编写发送邮件的通知 2. 配置切面 3. 测试 …

Java与数据库:JDBC和ORM框架的使用和效率优化

第一章&#xff1a;引言 随着互联网的快速发展和大数据时代的到来&#xff0c;数据库在软件开发中起到了至关重要的作用。Java作为一门强大而广泛应用的编程语言&#xff0c;提供了多种与数据库交互的方式。其中&#xff0c;JDBC和ORM框架是最常用的两种方式。本文将深入探讨J…