URL解码/编码
开发&运维URL解码/编码器功能说明
1、URL编码/解码
URL编码(encodeURI):对完整URL进行编码,不会编码:/?&=等URL保留字符。
URL解码(decodeURI):对encodeURI编码的结果进行解码。
示例:编码 "https://8jz.cn/url/#测试" → "https://8jz.cn/url/#%E6%B5%8B%E8%AF%95"(注意斜杠/未被编码)
2、URL组件编码/解码
URL组件编码(encodeURIComponent):对URL参数部分进行编码,会编码所有非标准字符。
URL组件解码(decodeURIComponent):对URL组件编码的结果进行解码。
示例:编码 "https://8jz.cn/url/#测试" → "https%3A%2F%2F8jz.cn%2Furl%2F%23%E6%B5%8B%E8%AF%95"(斜杠也被编码)
3、16进制编码/解码
16进制编码:将字符串转换为16进制表示形式,每个字符转换为%加两位16进制数。
16进制解码:将16进制编码的字符串转换回原始字符串。
示例:编码 "https://8jz.cn/url/#测试" → "%68%74%74%70%73%3a%2f%2f%38%6a%7a%2e%63%6e%2f%75%72%6c%2f%23%6d4b%8bd5"
URL解码/编码使用场景
- URL编码:处理完整URL时使用,确保URL结构不被破坏
- URL组件编码:处理URL参数值时使用,确保参数值中的特殊字符不会破坏URL
- URL网址16进制编码:需要完全编码所有字符时使用,或处理二进制数据