互联小程序 PDF 下载
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f8d71ee8/miniprogram-pdf-download。
技能介绍
问题背景
有些微信小程序只允许在线查看 PDF,不提供直接下载按钮,典型如互联二维码 / hlcode.cn 的文件预览页。工程师手里可能只有 #小程序://... 协议链接,也可能是带参数很长的 preview.hlcode.cn 预览 URL。浏览器打开后只能预览,无法稳定拿到原始文件,手工抓包又容易遗漏关键参数。
工作方式
这个技能把“从预览页到可下载文件”的过程拆成几步:先识别链接类型,再提取 id、name、type、time 等参数,然后调用后端接口获取真实下载地址,最后下载并校验文件。
- 优先输入:
https://preview.hlcode.cn/?...形式的 H5 预览链接。 - 小程序链接:
#小程序://互联二维码/xxx需要先在微信中转为 H5 链接,或抓包获取预览 URL。 - 关键调用:使用
id请求POST /qruser/file/get_url_byid,从data.url取得文件地址。 - 下载校验:检查文件大小、
Content-Type是否为application/pdf,以及首字节是否为%PDF-。 - 兼容范围:
type为word、excel、ppt时也可沿用同一流程。
适用边界
该流程主要面向互联二维码平台的文件下载场景,并不是通用小程序反编译工具。time 参数可能过期,但接口调用通常只依赖有效 id;如果返回 HTML、code: 1 或 code: 500,说明链接、文件状态或参数提取需要重新检查。中文文件名来自 URL 编码,展示前需要正确解码。
使用场景
- 收到微信互联二维码生成的 PDF 预览页,浏览器无下载按钮,需要拿到原始文件归档。
- 只有 #小程序://互联二维码/xxx 链接,需引导转换为 H5 预览链接后再提取下载。
- 客户发来 preview.hlcode.cn 文件预览链接,需要解析 id、time、name 并调用接口下载。
- 需要把预览页中的 Word、Excel 或 PPT 获取下来,确认 type 参数并校验文件头。
适合人员
- 处理微信文件分享的客服工程师,需要把仅预览的 PDF 落盘到本地归档。
- 做资料收集的测试工程师,需要从互联二维码预览链接稳定取得原始 PDF 或 Office 文件。
- 维护内部下载脚本的自动化工程师,需要复用预览链接到真实文件 URL 的接口调用流程。
- 排查文档获取故障的 SRE,需要验证 API code、Content-Type 和 PDF 魔数是否正常。