微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

POST 请求中的 %5B 和 %5D 代表什么?

如何解决POST 请求中的 %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时,我突然想到为什么这么多人进行相同的搜索。请参阅页面底部的注释:

另请注意,如果希望遵循更新的RFC3986 的 URL,保留方括号(用于 IPv6),因此在形成可能是 URL 的一部分(例如主机)的内容时不进行编码,以下可能会有所帮助。

function fixedEncodeURI (str) {
    return encodeURI(str).replace(/%5B/g, '[').replace(/%5D/g, ']');
}

希望这将帮助人们在偶然发现这个问题时解决他们的问题。

解决方法

我正在尝试编写一个 Java 类来登录某个网站。POST 请求中发送的登录数据为

user%5Blogin%5D=username&user%5Bpassword%5D=123456

我很好奇key user login*%5B中的and是什么意思。%5D *

我如何解码这些数据?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。