POST 请求中的 %5B 和 %5D 代表什么?
2022-08-31 04:50:44
我正在尝试编写一个Java类来登录某个网站。POST 登录请求中发送的数据为
user%5Blogin%5D=username&user%5Bpassword%5D=123456
我很好奇密钥用户登录中的和是什么意思。%5B
%5D
如何解码这些数据?
我正在尝试编写一个Java类来登录某个网站。POST 登录请求中发送的数据为
user%5Blogin%5D=username&user%5Bpassword%5D=123456
我很好奇密钥用户登录中的和是什么意思。%5B
%5D
如何解码这些数据?
根据这里的答案:编码:str='foo%20%5B12%5D'
foo [12]
%20 is space
%22 is quotes
%5B is '['
and %5D is ']'
这称为百分比编码,用于对 url 参数值中的特殊字符进行编码。
编辑顺便说一句,当我阅读 https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURI#Description 时,我突然想到为什么这么多人进行相同的搜索。请参阅页面底部的注释:
另请注意,如果希望遵循URL的最新RFC3986,则保留方括号(对于IPv6),因此在形成可能成为URL一部分的东西(例如主机)时未进行编码,则以下可能会有所帮助。
function fixedEncodeURI (str) {
return encodeURI(str).replace(/%5B/g, '[').replace(/%5D/g, ']');
}
希望这将有助于人们在偶然发现这个问题时解决问题。