微信小程序开发实战9_2 小程序页面转发

article/2025/10/9 7:35:34

小程序页面转发是小程序分享的一个重要方式,在设计小程序应用时就需要考虑那些页面需要实现转发功能,以及页面的转发参数。本节介绍如何进行小程序页面的分享,并介绍如何获取小程序卡片的分享票据。

9.2.1小程序页面转发

微信小程序提供了页面的转发的功能,用户在在打开小程序的页面时,可把该页面以消息卡片的形式转发给其他用户或微信群。微信小程序转发功能的实现方法有两种:

  • 第一种方式
    第一种方式是在page.js中实现onShareAppMessage,便可在小程序右上角显示分享菜单:
 onShareAppMessage: function () {return {title: '分享标题',desc: '分享页面的内容',path: '/pages/share_recv?code=123' }}
  • 第二种方式
    如果觉得小程序原生的转发用户体验不够友好,可以在页面自定义转发按钮,通过给 button 组件设置属性 open-type=“share”,可以在用户点击按钮后触发Page.onShareAppMessage事件,实现分享功能。
<view style="padding:5px"><button open-type='share'>分享</button>
</view>
  • 获取分享传递的参数
    上面的例子中,path属性指向的是/pages/share_recv页面,并附带code=123的参数。我们只需在share_recv.js的onLoad函数中,通过options获取传递过来的参数:
Page({onLoad: function (options) {console.log(options);}
})

9.2.2小程序分享票据

  • 小程序分享票据shareTickets
    通常开发者希望转发出去的小程序被二次打开的时候能够获取到一些信息,例如群的标识。在小程序中调用wx.showShareMenu并且设置 withShareTicket为true,当用户将小程序转发到微信群之后,此转发卡片在群聊中被其他用户打开时,可以在App.onLaunch 或App.onShow获取到一个shareTicket。通过调用wx.getShareInfo(shareTicket) 接口可以获取到转发信息。
    分享前调用wx.showShareMenu方法,否则不会带有分享票据:
Page({onLoad: function (options) {wx.showShareMenu({withShareTicket: true})},onShareAppMessage: function () {return {title: '分享标题',desc: '分享页面的内容',path: '/pages/share_recv?code=123' }}
})
  • 小程序获取票据shareTickets
    可以在App的onLaunch和onShow中获取 shareTicket,由于onLaunch全局只触发一次和热启动的原因,因此在onShow中获取 shareTicket比较合理:
App({onShow: function(opt) {console.log('app---onShow');//1044是群聊,1007是私聊if (opt.scene == 1044) {wx.getShareInfo({shareTicket: opt.shareTicket,success: function(res){var encryptedData = res.encryptedData;var iv = res.iv;console.log(res);}})}  }
)}

res.encryptedData就是分享到的群的相关信息了,不过这个信息是加密的,需要像获取手机号一样再去后端解密才可以,具体解密方法请参见:获取用户手机号码。 encryptedData 解密后为以下的json 结构:

{"openGId": "OPENGID"
}

说明:

  1. 只有分享到任一群聊,shareTicket才会有值,否则是undefined
  2. shareTicket也可以用来区分转发消息的场景
  3. shareTicket主要用来获取转发详情,传入wx.getShareInfo()中获取加密数据,需要后端配合,返回解密数据。

9.2.3 小程序卡片转发的调试

微信小程序开发者工具可以模拟向微信群转发小程序卡片,小程序官方提供的9个测试用的群,您可以在开发者工具中调试小程序卡片的转发功能。但是开发者工具模拟器无法进入测试群,因此也就无法点击转发出去的小程序卡片。要想对这种情况进行调试,需要使用开发者工具的自定义编译功能。接下来我们创建一个编译模式,用于调试打开带shareTicket的小程序卡片消息。具体操作步骤如下:
1)点击开发者工具的:添加编译模式,打开编译模式设置弹框。
2)为您的编译模式命名,并设置小程序的启动页面。
3)选择小程序的进入场景,您需选择:1044:带shareTicket的小程序卡片消息。
4)选择进入的群:小程序官方提供的9个测试用的群,选择其中的一个。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/Uk9Jb5u0.shtml

相关文章

Ubuntu16.04安装Cronolog

一、下载安装包 wget https://files.cnblogs.com/files/crazyzero/cronolog-1.6.2.tar.gz 二、 解压缩 tar -xzvf cronolog-1.6.2.tar.gz 三、进入安装目录 cd cronolog-1.6.2/ 四、运行安装 ./configure && make && make install 五、查看是否安装成功 wh…

Linux中Tomcat中的Cronolog日志分割工具配置

说明 在Tomcat 部署中我们默认访问的日志是logs 随着访问量的增加 一个catalina.out 访问量可能是10几G 如果不对logs 的日志进行分割的话&#xff0c;随着访问量的增加Tomcat 的日志就会占用大量资源浪费 &#xff0c;特此 需要使用 cronlong 日志分割工具进行分割日志 如图所…

CentoS 7.8.2003 安装篇三:Cronolog 日期切割工具

一、下载 wget http://cronolog.org/download/cronolog-1.6.2.tar.gz二. 解压缩 tar zxvf cronolog-1.6.2.tar.gz 三. 进入安装目录 cd cronolog-1.6.2 四. 运行安装 ./configure make make install 五. 查看是否安装成功 which cronolog…

使用cronolog进行日志切割

1、下载&#xff08;最新版本&#xff09; # wget http://cronolog.org/download/cronolog-1.6.2.tar.gz 2、解压缩 tar -xvf cronolog-1.6.2.tar 3、进入cronolog安装文件所在目录 cd cronolog-1.6.2 4、运行安装 # ./configure # make # make install 5、查看cronol…

cronolog切割tomcat的catalina.out日志

Linux下运行的Web服务器Apache&#xff0c;默认日志文件是不分割的&#xff0c;一个整文件既不易于管理&#xff0c;也不易于分析统计。安装cronolog后&#xff0c;可以将日志文件按时间分割&#xff0c;易于管理和分析。补充&#xff1a;apache自带的日志分割工具rotatelogs&a…

Tomcat日志切割cronolog

Cronolog 分割 Tomcat8 Catalina.out日志。 默认情况下&#xff0c;tomcat的catalina.out日志文件是没有像其它日志一样&#xff0c;按日期进行分割&#xff0c;而是全部输出全部写入到一个catalina.out&#xff0c;这样日积月累就会造成.out日志越来越大&#xff0c;给管理造成…

使用工具Cronolog进行日志分隔

前言&#xff1a;tomcat日志按日期切割 使用Cronolog 分割 Tomcat9下的catalina.out日志&#xff1b;tomcat的catalina.out日志文件无法按照日期进行自行分割&#xff0c;全部输出并写入到一个catalina.out文件下&#xff0c;如此日积月累就会造成.out日志越来越大&#xff0c…

Linux下tomcat日志分割工具cronolog

使用cronolog在Linux 下进行日志分割 1、下载编译安装 点击下载&#xff1a;cronolog-1.6.2.tar.gz 上传至Linux的/usr/local/src/07.cronolog下 执行解压&#xff1a; tar –zxvf cronolog-1.6.2.tar.gz 编辑配置 cd cronolog-1.6.2 ./configure 编译…

日志切割工具cronolog详解

日志切割工具cronolog详解 大家都知道apache服务器&#xff0c;默认日志文件是不分割的&#xff0c;一个整文件既不易于管理&#xff0c;也不易于分析统计。本文主要讲解Web服务器日志切割工具cronolog&#xff0c;下面我们就来详细的讲解一下。 1.上传及安装日志轮询工具cro…

win cronolog tomcat 日志分割

首先找到tomcat得bin目录录下边得startup.bat 编辑文件 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 换成 call "%EXECUTABLE%" run %CMD_LINE_ARGS% 修改之后 如下 cronolog.exe 去下边得链接去下载&#xff0c;我也是花了一块钱去下载的&#xff0c;找…

tomcat 配置 cronolog

1、将文件复制到制定目录下&#xff0c;解压文件 tar xf cronolog-1.6.2.tar.gz 2、进入目录 cd cronolog-1.6.2 运行配置 ./configure &>/dev/null 3、执行 make &>/dev/null make install &>/dev/null 4、最后修改 tomcat bin目录下catalina.sh …

java日志切割工具_Cronolog日志分割工具

释放双眼&#xff0c;带上耳机&#xff0c;听听看~&#xff01; 下载安装Cronolog wget http://rpmfind.net/linux/epel/7/x86_64/Packages/c/cronolog-1.6.2-14.el7.x86_64.rpm rpm -Uvh cronolog-1.6.2-14.el7.x86_64.rpm #验证cronolog安装路径 which cronolog /sbin/cronol…

Linux 日志切割工具cronolog无root权限安装

1、下载安装包&#xff0c;我这下载的是cronolog-1.6.2.tar.gz 2、放到自己有权限的目录下面比如 /home/cronolog/ 3、解压 tar zxvf cronolog-1.6.2.tar.gz 4、进入cronolog安装文件所在目录 cd cronolog-1.6.2 2.4 运行安装 ./configuremakemake install 注&#xff…

日志分隔工具Cronolog的使用

Cronolog 分割 Tomcat8 Catalina.out日志。 默认情况下&#xff0c;tomcat的catalina.out日志文件是没有像其它日志一样&#xff0c;按日期进行分割&#xff0c;而是全部输出全部写入到一个catalina.out&#xff0c;这样日积月累就会造成.out日志越来越大&#xff0c;给管理造成…

Linux日志切割工具cronolog详解与安装

1&#xff0c;cronolog的介绍 cronolog 是一个简单的过滤程序&#xff0c;读取日志文件条目从标准输入和输出的每个条目并写入指定的 日志文件的文件名模板和当前的日期和时间。当扩展文件名的变化&#xff0c;目前的文件是关闭&#xff0c;新开辟的。 cronolog 旨在和一个Web…

EXMC(FSMC)转BRAM,实现单片机与FPGA的交互,FPGA端

目录 1. 前言1.1 需求1.2 平台 2. 背景知识3. 实操3.1 工程介绍3.2 接口介绍3.2.1 EXMC信号介绍&#xff1a;3.2.2 BRAM接口介绍3.2.2 对比 3.3 代码&#xff1a; 5. 附录 1. 前言 在国产的GD32和复旦微FPGA之间实现较高带宽的数据通信&#xff0c;可以使用EXMC接口。EXMC接口…

FPGA逻辑资源评估之BRAM(以Xilinx为例)

在FPGA逻辑设计时&#xff0c;需要参考所需逻辑资源对FPGA进行选型&#xff0c;其中一项就是对BRAM的评估&#xff0c;在这里以xilinx UltraSCALE系列FPGA为例&#xff0c;对BRAM进行简单介绍。 FPGA中RAM资源一般分为DRAM和BRAM两种&#xff0c;而Xilinx UltraSCALE系列FPGA除…

xilinx BRAM实现FIFO

许多FPGA设计使用BRAM来实现FIFO。在Xilinx 7系列体系结构中&#xff0c;块RAM中的专用逻辑能够实现同步或双时钟&#xff08;异步&#xff09;FIFO。这消除了计数器、比较器或状态标志生成所需的额外CLB逻辑&#xff0c;并且每个FIFO仅使用一个块RAM资源。支持标准和首字跳转&…

【正点原子FPGA连载】 第十八章基于BRAM的PS和PL的数据交互 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

1&#xff09;实验平台&#xff1a;正点原子MPSoC开发板 2&#xff09;平台购买地址&#xff1a;https://detail.tmall.com/item.htm?id692450874670 3&#xff09;全套实验源码手册视频下载地址&#xff1a; http://www.openedv.com/thread-340252-1-1.html 第十八章基于BRA…

Xilinx 7系列 BRAM概述

Xilinx7系列FPGA中的块RAM可存储36 Kb的数据&#xff0c;可以配置为两个独立的18 Kb RAM或一个36 Kb RAM。在简单双端口模式下&#xff0c;每个36 Kb块RAM可以配置为64K x 1&#xff08;与相邻的36 Kb块内存级联时&#xff09;、32K x 1、16K x 2、8K x 4、4K x 9、2K x 18、1K…