← 所有文章
指南

LINE URI action:10,000 字符上限与桌面链接检查

LINE Messaging API 的 URI action 现在允许 uri 和 altUri.desktop 各自最多 10,000 个字符。LINE 于 2026 年 10 月 27 日公布这项调整。应更新这两个属性的校验,而不是放宽所有 URL 或文本字段。Flex Message 配置桌面替代链接后,macOS 和 Windows 版 LINE 会使用它而非 uri;这并不是所有消息类型通用的桌面入口。

重点结论

  • 新上限针对 URI action 的目标地址,不是按钮数量或整条消息长度。
  • 应校验完成参数拼接与编码后、实际发送的 URI 字符串。
  • altUri.desktop 适用于受支持的 Flex Message URI action,不适用于 quick reply。
  • API 接受消息、用户打开页面、业务操作完成,需要分别验证。

LINE 改了什么,没有改什么

LINE 2026 年官方公告汇总记录了 10 月 27 日的调整。当前 URI action reference明确列出两个目标属性的 10,000 字符上限。

属性当前上限含义
uri10,000 字符执行动作时打开的 URI
altUri.desktop10,000 字符受支持场景下,macOS、Windows 版 LINE 使用的替代 URI

LINE 列出的 scheme 为 http、https、line 和 tel,并要求 URI 使用 UTF-8 百分号编码。scheme 合法、长度合格,不代表页面一定存在,也不代表用户有权访问。

不要把应用里的所有长度限制统一改成 10,000。图片 URL、标签、消息文本以及消息容器各有自己的契约。如果真正的问题是选项太多,而不是地址太长,请参阅LINE 按钮模板的替代方案。

先决定移动端与桌面端分别打开哪里

LINE reference 说明:设置 altUri.desktop 后,macOS 和 Windows 版 LINE 会忽略 uri,改用桌面替代地址。该属性支持 Flex Message 中的 URI action,但不能用于 quick reply。公告也将使用桌面属性的场景列为 Flex Message,不应将其推广到模板消息或 rich menu。

下面是用于 Flex Message 的示意 action 对象,不是完整发送请求:

{
  "type": "uri",
  "label": "查看详情",
  "uri": "https://example.com/mobile/orders/42",
  "altUri": {
    "desktop": "https://example.com/orders/42"
  }
}

这些是示例地址,不是可用订单页面。应把对象放进兼容的消息组件,再依据 LINE reference 验证完整消息。如果你的流程是分享 MINI App 页面,请使用自定义操作按钮与永久链接流程;地址长度变大,不会替代正确的 MINI App 链接构造规则。

检查最终 URI,而不只是输入框

上线较长目标链接前,建议逐项检查:

  1. 找出所有本地长度限制。 检查编辑器、后端校验、消息构造器,以及应用使用的 SDK 模型。只更新这两个 URI action 属性的限制,并核对实际安装的 SDK;不要假设所有版本都已支持新上限。
  2. 先构造,再测量。 拼接目标地址与查询参数,正确应用 UTF-8 百分号编码。检查最终属性值,而非未编码文本或整份 JSON 的长度。不要把完整 URL 当成一个查询参数值整体编码,也不要重复编码已有编码值。
  3. 分别检查两个目标。 移动端地址有效,不代表桌面地址有效。桌面页面应能在移动端专用流程之外使用,并独立处理登录和记录不可用的情况。
  4. 在目标页面执行授权。 作为应用安全实践,不要把 API key、会话凭证或不必要的个人信息放入链接。字段变长不是把整个客户记录序列化进查询串的理由;优先使用由服务端验证访问权限的记录引用。
  5. 测试真实点击路径。 先确认完整消息被接受,再在目标移动端、桌面端点击实际动作。检查重定向后的最终页面,而不只是构造器生成的 URL。

回归测试建议包含:恰好达到和超过上限的值、编码后的非 ASCII 查询参数、单独无效的桌面地址,以及要求登录的目标页面。这些是建议执行的测试,不是已完成的测试结果。不能仅凭发送响应宣布整条链路成功。

不要混用 UnifyPort 的发送契约

这项调整属于官方 LINE Messaging API。UnifyPort 的标准化消息支持矩阵没有记录 LINE Flex Message URI action 或 altUri.desktop 发送字段。不要直接把该字段加入 UnifyPort 请求并假定会渲染原生卡片。

需要原生交互卡片时,应使用官方 LINE 接入。UnifyPort 的非官方接口解决的是另一类需求:连接普通 LINE 账号,通过标准化事件处理受支持的会话。面向东南亚客户的团队可先阅读LINE 授权指南,确认该账号路径是否适合自己的客服流程。URI 长度调整和统一事件结构,都不会改变所选接入方式的身份及能力边界。

常见问题

LINE URI action 还是最多 1,000 字符吗?

不是。2026 年 10 月 27 日公告提高了限制;当前 reference 对 uri、altUri.desktop 均规定最多 10,000 字符。如果较长值仍被拒绝,应检查本地校验规则。

quick reply 可以使用 altUri.desktop 吗?

不可以。LINE 明确说明该属性不适用于 quick reply。请在文档支持的 Flex Message 场景使用,并测试对应桌面客户端。

这会增加按钮数量或 MINI App 分享权限吗?

不会。变化仅涉及指定 URI action 属性的长度。布局限制、分享流程、身份验证和目标访问权限仍需分别处理。

下一步与来源

先按LINE URI action reference审查消息构造器。若还在选择原生卡片与标准化消息接入,请先查看UnifyPort 消息支持矩阵,再实现发送流程。

官方来源核对日期:2026-11-07。

UnifyPort API

让消息接入变成一条稳定的产品管线。

先用统一 API 跑通发送,再用标准事件把所有入站消息接回业务系统。