点开一条小程序 URL Link,却进不去目标页时,先不要把它当成普通短链失效,也不要先去改链接后面的参数。微信开放文档把这件事写在「获取加密 URL Link」和查询接口里:先核这条链接的有效期、要打开的环境版本,再用查询结果确认链接是否还在。下面按2026年11月13日(北京时间)核读的现行页面来核对,生成接口页页标最后一次编辑于2026-07-13,开放能力指南页页标最后一次编辑于2026-06-16,查询接口页页标最后一次编辑于2025-12-18。

「获取加密URLLink」接口页写:该接口用于获取小程序 URL Link,适用于短信、邮件、网页、微信内等拉起小程序的业务场景;目前仅针对国内非个人主体的小程序开放。同主题指南页「获取 URL Link」(页内标题为「获取加密 URL Link」)也写:通过服务端接口可以获取打开小程序任意页面的 URL Link,适用于从短信、邮件、网页、微信内等场景打开小程序。生成的链接是 https://wxaurl.cn/ 或 https://wxmpurl.cn/ 后面接接口返回的票据。指南页还写:通过 URL Link 从微信外打开小程序的场景值为 1194;在微信内访问时,会调整为开放标签打开小程序,场景值为 1167。
这些页面说的是官方 URL Link,不是微信内拉起用的 Short Link,也不是 URL Scheme。Short Link 的开放范围、短期有效和永久有效等规则,写在另一份接口文档里,不能拿来解释 URL Link 为什么打不开。本文只转述本轮核读的 URL Link 页面,未实际生成或点击验证。
两份页面都要求接口在服务器端调用,不可在前端(小程序、网页、APP 等)直接调用。指南页的开放范围写「针对非个人主体小程序开放」,生成接口页则写「目前仅针对国内非个人主体的小程序开放」。这两处口径略有差别,本文并列转述,不自行改写成一句。若生成时遇到错误码 40002,该页解决方案写的是:暂无生成权限(个人主体小程序无权限,或者 NFC 能力的小程序未申请权限)。
打不开时,第一项应核对这条链接当时是按哪一种方式到期的。生成接口的请求参数里,expire_type 表示失效类型,默认值是 0,表示按失效时间;为 1 时表示按失效间隔天数。expire_type 为 0 时,必须填写 expire_time,它是到期失效的 Unix 时间戳,生成的链接在该时间前有效,最长有效期为 30 天。expire_type 为 1 时,必须填写 expire_interval,表示失效间隔天数,生成的链接在该间隔到达前有效,最长间隔天数同样是 30 天。错误码 85401 的说明是:参数 expire_time 填写错误,时间间隔须大于 1 分钟且小于 30 天。
也就是说,按生成页的现行字段,URL Link 是到期失效的,最长 30 天;默认的失效类型还是「失效时间」,不是「间隔天数」。如果生成时用了默认项却没有按文档准备 expire_time,或把有效期写成超过 30 天,都可能在生成阶段就失败。已经发出去的链接,则要以当时写入的到期时间或间隔天数,对照现在是否已经过期。生成页没有把「永久有效」写成可选项,这一点不能和 Short Link 的永久有效参数混在一起读。
第二项是环境版本。生成参数 env_version 的默认值是 release,表示要打开的小程序版本:正式版为 release,体验版为 trial,开发版为 develop,并且写明「仅在微信外打开时生效」。查询接口返回的 url_link_info 里也有 env_version 字段,取值同样是正式版 release、体验版 trial、开发版 develop。
如果这条链接生成时指定的是体验版或开发版,却在微信内打开,按生成页的表述,该设置不会在微信内生效。看起来像「进不去我想要的版本」,原因可能出在打开场景,而不是链接已经失效。反之,在微信外打开仍进不去时,应核对 env_version 当时到底填了哪一个值,以及该版本是否真实存在。错误码 85402 的说明是参数 env_version 填写错误。本文未在不同客户端上实测微信内、微信外的跳转差异,只转述文档里「仅在微信外打开时生效」这一句。
第三项是确认这条链接本身是否还有效。查询接口「查询加密URLLink」写明:该接口用于查询小程序加密 url_link 配置,同样应在服务器端调用。请求里,url_link 是要查的加密链接;query_type 默认值为 0,表示查询 url_link 信息,为 1 时表示查询每天剩余访问次数。
query_type 为 0 时,返回的 url_link_info 里可以核对:小程序 appid、页面路径 path、页面 query、创建时间 create_time(Unix 时间戳)、到期失效时间 expire_time(Unix 时间戳,0 表示永久生效),以及 env_version。若返回错误码 85403,该页的说明是 scheme/url link 不存在。点开失败时,应先看查询结果是「找不到这条链接」,还是链接还在、但 expire_time 已经早于当前时间,或 env_version、path 与预期不符。
这里有一处需要分开读,不要自行合并:生成页只写了到期失效、最长 30 天,没有给出「永久有效」的生成参数;查询页却在 expire_time 的说明里写「0 表示永久生效」。本文同时转述这两处原文,不把查询字段里的 0 改写成现在仍可生成永久链接,也不根据生成页的 30 天去否定查询页对 0 的解释。验收时以这条链接查询出来的 expire_time 为准。
query_type 为 1 时,返回的是 quota_info 中的 remain_visit_quota,说明为「URL Scheme(加密+明文)/加密 URL Link 单天剩余访问次数」。生成页错误码 85406 的说明是:URL Scheme(加密+明文)/加密 URL Link 单天累加访问次数超过上限。这是合计次数,不是单独写给 URL Link 的打开次数,也不能理解成 Short Link 的规则。至于上限数字,2026-07-13 的生成接口页写打开端每天 300 万,2026-06-16 的指南页写打开端每天 600 万;两页都把生成端每天的合计上限写成 50 万。这两处都是官方文档,页名、编辑日期和打开端数字不同,本文并列备查,不自行取舍。
有效期和版本都对,仍可能打不开。生成页和指南页都写:只能生成已发布的小程序的 URL Link。path 必须是已经发布的小程序存在的页面,不可携带 query;path 为空时会跳转小程序主页。页面参数要放在单独的 query 字段里,最大 1024 个字符。错误码 85079 的说明是「小程序没有线上版本,即小程序尚未发布,不可进行该操作」;40165 对应 path 填写错误。
另外,指南页和生成页都写:在微信内或者安卓手机打开 URL Link 时,默认会先跳转官方 H5 中间页;如果需要定制 H5 内容,可以使用云开发静态网站。若停留在官方中间页,不一定等于链接已经失效,这是文档写明的默认过程。生成页还提到,自 2023 年 12 月 19 日起,取消 URL Link 一人一链的限制,支持同一条连接被多名用户访问。因此,不能再把「已经被别人打开过」直接当成现在打不开的原因;是否一人一链,应以该条调整说明为准。本文未实测中间页和取消一人一链后的实际表现。
- 这是官方 URL Link,还是被误当成 Short Link 或普通短链
- 生成时 expire_type 是 0 还是 1,expire_time 或 expire_interval 是否已过期,是否超过最长 30 天
- 用查询接口查看 expire_time:是已经到期,还是返回 0,或错误码 85403 提示链接不存在
- env_version 是正式版、体验版还是开发版;若不是正式版,这次是在微信外打开还是微信内打开
- 小程序是否已发布,path 是否为已发布页面且没有把 query 写进 path
- 若停留在官方 H5 中间页,先按文档把它视为默认跳转,而不是直接判定失败
- 如需查看当天剩余访问次数,查询 query_type 为 1 的结果,并同时看到 300 万与 600 万两处合计上限
点开 URL Link 进不去,通常要先分清是过期、版本场景不对,还是查询结果已经显示链接不存在。把这几项按文档分开核对,比反复更换一条新链接更容易定位。本文未调用接口,也未在真机上逐项复现,实际以当时的查询结果和客户端表现为准。
[1] 微信开放文档:获取加密URLLink https://developers.weixin.qq.com/miniprogram/dev/server/API/qrcode-link/url-link/api_generateurllink.html,最后一次编辑于 2026-07-13,访问日期 2026-11-13(北京时间)。本文依据该页关于适用于短信、邮件、网页、微信内等拉起小程序、目前仅针对国内非个人主体开放、expire_type / expire_time / expire_interval 及最长 30 天、env_version 默认 release 且仅在微信外打开时生效、只能生成已发布小程序的 URL Link、path 必须为已发布页面且不可携带 query、官方 H5 中间页、自 2023 年 12 月 19 日起取消一人一链,以及生成端每天 50 万、打开端每天 300 万(与 URL Scheme 加密加明文合计)、错误码 40002、40165、85079、85401、85402、85406 等表述。
[2] 微信开放文档:查询加密URLLink https://developers.weixin.qq.com/miniprogram/dev/server/API/qrcode-link/url-link/api_queryurllink.html,最后一次编辑于 2025-12-18,访问日期 2026-11-13(北京时间)。本文依据该页 query_type 为 0 时返回 url_link_info(含 expire_time,0 表示永久生效;env_version 为正式版、体验版或开发版)、query_type 为 1 时返回 remain_visit_quota(URL Scheme 加密加明文与加密 URL Link 单天剩余访问次数),以及错误码 85403「scheme/url link不存在」等表述。
[3] 微信开放文档:获取 URL Link https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/url-link.html,最后一次编辑于 2026-06-16,访问日期 2026-11-13(北京时间)。页内标题为「获取加密 URL Link」。本文依据该页关于适用场景、微信外场景值 1194 与微信内开放标签场景值 1167、只能生成已发布小程序的 URL Link、官方 H5 中间页、开放范围「针对非个人主体小程序开放」,以及生成端每天 50 万、打开端每天 600 万(与 URL Scheme 加密加明文合计,打开端数字与上条接口页的 300 万不同,本文并列备查)等表述。
