URI Component Encoder
在线对 URI 组件和完整 URL 进行百分号编码或解码
Function:
Plain Input
关于本工具
URI组件编码器/解码器将浏览器原生的encodeURIComponent、decodeURIComponent、encodeURI和decodeURI函数封装为便捷的用户界面。百分号编码会将URL中不允许出现的字符替换为%加上表示其UTF-8字节的两位十六进制数字。
encodeURIComponent / decodeURIComponent将输入视为单个组件(查询值、路径片段),对所有特殊字符进行编码。encodeURI / decodeURI将输入视为完整URL,保留://?=#等结构性字符,以维持URL的整体结构。
使用方法
- 选择“编码”进行百分号编码,或选择“解码”以还原该过程。
- 选择函数:单个值使用encodeURIComponent,完整URL使用encodeURI。
- 粘贴输入内容,或点击“示例”加载示例。
- 点击“转换”,然后点击“复制”获取结果。
使用场景
前端开发者在将查询字符串值附加到URL之前对其进行编码。后端工程师解码经过百分号编码的表单负载以便检查。QA工程师在提交漏洞报告前验证URL编码是否正确。API集成人员对请求URL中的身份验证令牌或特殊字符进行编码。
常见问题
- encodeURI和encodeURIComponent有什么区别? — encodeURI用于完整的URL,不会对URL层级中有效的字符(:/?#&)进行编码。encodeURIComponent用于单个组件,会对这些结构性字符也进行编码。
- 为什么空格会被转换为%20而不是+? — 百分号编码(%20)是RFC 3986定义的标准。+符号写法是HTML表单编码(application/x-www-form-urlencoded)特有的,这些函数并不使用它。
- 我的数据会被发送到其他地方吗? — 不会。所有操作都在浏览器中使用JavaScript内置函数完成,不会向服务器传输任何数据。