Что означает% 5B и% 5D в запросах POST?
Я пытаюсь написать класс Java для входа на определенный сайт. Данные, отправленные в запросе POST для входа в систему
user%5Blogin%5D=username&user%5Bpassword%5D=123456
Мне любопытно, что означают %5B
и %5D
при входе ключевого пользователя.
Как мне закодировать эти данные?
Ответы
Ответ 1
Согласно этому ответу здесь: str='foo%20%5B12%5D'
кодирует foo [12]
:
%20 is space
%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, ']');
}
Надеюсь, это поможет людям разобраться в своих проблемах, когда они наткнуться на этот вопрос.
Ответ 2
Они представляют [
и ]
. Кодировка называется "URL-кодировка" .
Ответ 3
[]
заменяется на %5B%5D
на время кодирования URL.
Ответ 4
Ну, это обычный кодировка url
Таким образом, они стоят [
, соответственно ]
Ответ 5
Чтобы быстро взглянуть, вы можете использовать процент-en/decode с помощью этого онлайн-инструмента.
Ответ 6
Данные, вероятно, были бы опубликованы из веб-формы, немного похожие на это (но, вероятно, намного сложнее):
<form action="http://example.com" method="post">
User login <input name="user[login]" /><br />
User password <input name="user[password]" /><br />
<input type="submit" />
</form>
Если метод "get" вместо "post", нажатие кнопки "Отправить" приведет вас к URL-адресу, который выглядит примерно так:
http://example.com/?user%5Blogin%5D=username&user%5Bpassword%5D=123456
или
http://example.com/?user[login]=username&user[password]=123456
Веб-сервер на другом конце, скорее всего, примет параметры user[login]
и user[password]
и превратит их в объект user
с полями login
и password
, содержащими эти значения.