在快手小程序里把一个商品页或活动页分享出去,对方点开卡片,却落在了首页,或者页面打开了但不知道是哪位用户、哪次分享带来的。这类问题大多和分享卡片里的 path 有关:它决定卡片被点开后进入哪一页,也承载了想带过去的参数。下面按2026年11月13日(北京时间)核读的快手小程序文档,把 path 的写法、参数的读取位置和几个容易忽略的细节分开说明。

快手小程序文档「Page」页(页标更新时间2025-08-19 10:54:10)在 onShareAppMessage 一节写道:Page 接口中如果定义了 onShareAppMessage,则本页面自动开启分享,同时它的返回值会作为分享的内容。返回值字段有四个:title(分享标题)、imageUrl(分享图标)、path(当前页面路径)、desc(转发内容)。
path 在表里的说明是「当前页面路径」。也就是说,卡片被点开后要打开哪一个页面,是在分享发生的那一刻,由这个返回值告诉平台的。如果希望对方直接进入商品详情页,就要在详情页的 onShareAppMessage 里返回详情页的路径;如果返回值里的路径写成了首页,或者写错了页面,点开卡片自然到不了想去的地方。
「私信分享与站外分享能力」页(页标更新时间2024-09-09 10:57:31)描述站外分享时也提到,H5 链接分享打开后可唤起快手并跳转至小程序对应页面,海报分享扫码后可通过提示弹窗跳转至小程序对应页面。这里的「对应页面」,同样以分享时提供的页面信息为准。
Page 页紧接着写了一句很实用的话:自定义 path 时,可在路径上追加参数以区分不同分享带来的转化。比如同一个活动页,由不同人分享出去,可以在路径后面带上分享人或活动批次的标识,之后再按参数统计。
「发快手能力」页(页标更新时间2026-01-04 10:42:45)在说明如何设置参数时补充:发快手使用的是挂载页面的 onShareAppMessage 能力,如需携带参数信息,可以在 path 后拼接相关参数;如有特殊字符,需要将参数 encode 后再拼接。中文、空格、等号、& 这类字符直接拼进去,可能把一个参数拆成几段,编码这一步不要省。
参数带多少、叫什么名字,文档没有给出统一规定,由开发者按业务决定。建议只放识别来源必需的字段,不要把手机号等个人信息直接拼进路径。
带过去的参数,要在被打开的那一页读取。Page 页对 onLoad 的说明是:页面加载时触发,一个页面只会调用一次,可以在 onLoad 的参数中获取打开当前页面路径中的参数;参数 query 是一个对象,含义为「打开当前页面路径中的参数」。
所以排查「参数丢了」时,可以把链路拆成三段:分享页的 onShareAppMessage 返回的 path 里有没有带上参数;参数有没有按要求编码;落地页的 onLoad 有没有从 query 里按同样的名字取值。三段中任何一段对不上,结果都像是「参数没传过去」。
还要注意 onLoad 一个页面只会调用一次。如果业务逻辑写在 onShow 里,或者依赖页面切回前台时重新取值,要另外处理,不能默认每次显示都会拿到新的 query。
onShareAppMessage 的名字容易让人以为它只管「分享给别人」。Page 页列出的触发场景其实更多:右上角菜单的分享按钮,右上角菜单的收藏本页和设为常用,右上角菜单的稍后再看,button 组件的 share 和 favorite 行为,以及绑定短视频挂载。
文档用参数区分这些情况:from 表示分享事件来源,button 为页面内转发按钮,menu 为右上角转发菜单;type 表示这次返回的内容用来配置在什么地方,取值包括 share(分享内容)、plc(左下角视频挂载)、favorite(收藏行为)、live(直播挂载)、videoPublish(发布快手视频)。文档还写明,自定义了 title 时,挂载在短视频上的标题会继承这里的指定。
这意味着同一个返回值可能同时被用在分享卡片、视频挂载和收藏上。如果只想给分享卡片带某个渠道参数,而不希望视频挂载也用同一个标识,可以按 type 分别返回不同的 path。反过来,如果视频挂载的数据看起来和分享渠道混在一起,也可以先检查是不是共用了同一个返回值。
Page 页在示例代码下方有一条注意事项:如果 onShareAppMessage 执行报错,会中断分享行为,并弹出分享失败的提示。拼接参数时常见的空值、未定义变量,都可能在这里引发报错。给参数准备默认值,或者在拼接前先判断,能避免因为一个统计字段而让整次分享失败。
- 分享页的 onShareAppMessage 返回的 path,是否就是希望对方打开的那一页
- path 后追加的参数是否只保留识别来源所需字段,特殊字符是否已编码
- 落地页 onLoad 读取 query 时,参数名是否与拼接时一致
- 是否需要按 type 区分分享、视频挂载、收藏等场景,分别返回不同内容
- onShareAppMessage 内部有没有可能因为空值报错,导致分享整体失败
卡片的标题和图决定对方愿不愿意点,path 决定点开后去哪、能不能被识别。把 path 当成分享卡片的一部分来设计和检查,比事后在首页补引导更省事。以上依据为本轮核读的公开文档,未在真机逐项实测,具体表现以当前客户端和小程序配置为准。
[1] 快手小程序文档:Page https://open.kuaishou.com/docs/develop/frame/page/page_page.html,页标更新时间2025-08-19 10:54:10,访问日期2026-11-13(北京时间)。引用范围:onLoad(Object query) 的说明;onShareAppMessage 的触发场景、from 与 type 参数、返回值字段 title/imageUrl/path/desc、自定义 path 可追加参数区分转化、title 被短视频挂载继承、执行报错会中断分享。
[2] 快手小程序文档:发快手能力 https://open.kuaishou.com/docs/develop/functionAccessGuide/fksVideoMount.html,页标更新时间2026-01-04 10:42:45,访问日期2026-11-13(北京时间)。引用范围:发快手使用挂载页面的 onShareAppMessage 能力,携带参数可在 path 后拼接,特殊字符需 encode 后拼接。
[3] 快手小程序文档:私信分享与站外分享能力 https://open.kuaishou.com/docs/develop/functionAccessGuide/share.html,页标更新时间2024-09-09 10:57:31,访问日期2026-11-13(北京时间)。引用范围:H5 链接分享与海报分享打开后跳转至小程序对应页面的描述。