网关把「你好」截断,多半是没编码或编了两次。本页三种模式:编整段、编组件、解码。JWT 里是 Base64URL,不要拿到这里当百分号。
接口文档里中文要进 q=,微信分享链接要带标题——只编组件。MDN 中文文档写得很死:用户输入里的 &、= 不编,服务器会拆成新的键值对。365 工具箱一类教程也强调:测试环境能开、生产丢一半参数,八成选错了函数。
可读路径走 URL Slug。文本 Base64 走 Base64。HTML 里的 & 走实体编解码。
错误地把整段丢进组件模式,会变成无法打开的一串:
https%3A%2F%2Fexample.com%2Fsearch%3Fq%3D%E4%BD%A0%E5%A5%BD
正确的是只编「你好」:
https://example.com/search?q=%E4%BD%A0%E5%A5%BD
中文查询只要编组件
- 「你」编成
%E4%BD%A0这类 UTF-8 三字节。老式escape的%u4F60很多网关不认。 - 空格在本页是
%20。表单里常见+。解码模式会先把+换成空格。 - 不是短链,不是签名 URL,也不是加密。
- 编两次变成
%2520。解一次不够就再解。
不要连着协议一起编
- 只贴要编码的那一段值,或整段地址(选对模式)。
- 编码或解码。
- 拼回完整 URL 时自己看
?和&。对不上先查是不是编了两次。
不是短链服务。不是签名 URL 生成器。编码不是加密。