WeChatFerry项目:通过XML发送微信小程序的实现方法
2025-06-04 01:01:45作者:田桥桑Industrious
在微信生态开发中,通过XML格式发送小程序消息是一个常见需求。WeChatFerry项目作为微信自动化工具,提供了这一功能的实现方案。本文将详细介绍如何构建用于发送小程序的XML消息结构。
XML消息基本结构
发送小程序的XML消息核心在于<appmsg>标签内的内容。一个典型的小程序分享XML包含以下关键元素:
<appmsg appid="小程序ID" sdkver="">
<title>小程序标题</title>
<des>描述信息</des>
<action>view</action>
<type>33</type>
<showtype>0</showtype>
<url>跳转链接</url>
<appattach>
<cdnthumburl>封面图URL</cdnthumburl>
</appattach>
<weappinfo>
<pagepath>小程序页面路径</pagepath>
<username>小程序原始ID</username>
<appid>小程序ID</appid>
<type>2</type>
<weappiconurl>小程序图标URL</weappiconurl>
</weappinfo>
</appmsg>
关键参数解析
-
appid:目标小程序的唯一标识,格式通常为
wx开头的一串字符 -
type:固定值为33,表示小程序消息类型
-
url:当用户无法打开小程序时的备用跳转链接
-
weappinfo:包含小程序的核心信息
- pagepath:指定打开的小程序页面路径
- username:小程序的原始ID,格式如
gh_xxxxxx@app - weappiconurl:小程序的图标地址
-
appattach:定义消息的封面图
- cdnthumburl:封面图的CDN地址
实际应用示例
以分享美团小程序为例,XML结构如下:
<appmsg appid="wx99a920f0f56747a7" sdkver="">
<title>肯德基|神抢手专享双人桶套餐兑换券</title>
<action>view</action>
<type>33</type>
<url>https://mp.weixin.qq.com/xxx</url>
<appattach>
<cdnthumburl>https://img.meituan.net/xxx.png</cdnthumburl>
</appattach>
<weappinfo>
<pagepath>pages/index/index.html?params</pagepath>
<username>gh_3251afdeca38@app</username>
<appid>wx99a920f0f56747a7</appid>
<type>2</type>
<weappiconurl>http://mmbiz.qpic.cn/xxx.png</weappiconurl>
</weappinfo>
</appmsg>
实现注意事项
-
所有URL参数需要进行XML实体编码转换(如&转换为&)
-
封面图尺寸建议为1080*864像素,保证显示效果
-
小程序页面路径(pagepath)可以携带参数,用于指定打开的具体页面
-
实际发送时需要将上述XML片段包裹在微信消息的标准结构中
通过WeChatFerry项目实现小程序分享功能时,开发者只需构建上述XML结构并传递给相关接口即可完成小程序的自动化分享。这种方案适用于各种需要批量或自动化分享小程序的业务场景。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0217
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0139
uni-appA cross-platform framework using Vue.jsJavaScript09
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03
热门内容推荐
最新内容推荐
项目优选
收起
deepin linux kernel
C
32
16
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
465
Ascend Extension for PyTorch
Python
758
968
昇腾LLM分布式训练框架
Python
186
231
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
699
1.4 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
879
2.03 K
暂无描述
Dockerfile
780
5.08 K
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
70
22
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
2.08 K
217