复制中文slug时,如果把完整URL当一个参数编码,可能生成坏链接。应先区分路径段与查询值,保留地址结构,并测试原本可能当作分隔符的字符。
适用读者与交付决定
制作多语言资源地址的企业。把本题作为网站供应方的有限验收任务;实际系统证据不能由教学例子替代。
官方依据与解释边界
encodeURIComponent用于单个URI组成部分,会编码可能带分隔含义的字符,不能盲目用于整条URL。 MDN: encodeURIComponent · 核对日期:2026年10月16日。
已填写教学例子
合成例子,不是真实客户案例。 列出有限输入、预期结果及反例,不代表已完成真实平台集成。
窄屏可横向滚动表格。
| 输入/情况 | 检查口径 | 预期结果 |
|---|---|---|
| segment=报价 | 路径段编码 | %E6%8A%A5%E4%BB%B7 |
| segment=A/B | 斜杠属于值 | A%2FB |
| already encoded value | 重复编码风险 | 明确输入约定 |
怎样执行验收
- 明确接口收到原始Unicode路径段还是已编码路径。
- 用批准基地址和分别编码的值构造测试URL。
- 跟随真实新路由核对canonical、解码身份和往返链接。
如何解释结果与保留证据
例子只编码原始路径段,不请求路由,也不保证所有服务器接受编码斜杠。业务slug若不允许斜杠,应按规则拒绝,不能认为编码后自然支持。交付要明确原始与已编码的输入边界。
适用边界
不改旧slug、canonical或跳转;不做任意URL安全校验或服务器路由兼容保证。
离线复核
把下方两份文件存入同一目录,以Node22.13或更新版本运行。示例不联网、不修改任何账号或网站。 已填输入与预期输出 · 可检查的函数
node decision-check.mjs bilingual-url-segment-encoding.json