Экранирование символов имени пользователя в основных URL-адресах авторизации - PullRequest
46 голосов
/ 16 июля 2011

При использовании обычной аутентификации http имя пользователя может быть передано в URL, например,

http://david@foo.com/path/

Но теперь предположим, что имя пользователя является адресом электронной почты, например, david@company.com. Делать это явно неоднозначно:

http://david@company.com@foo.com/path/

Есть ли способ экранировать символ @ в имени пользователя? Я пробовал стандартную кодировку URL:

http://david%40company.com@foo.com/path/

Но этого не произошло.

1 Ответ

65 голосов
/ 16 июля 2011

Согласно RFC 3986 , раздел 3.2.1, он должен быть закодирован в процентах:

  userinfo    = *( unreserved / pct-encoded / sub-delims / ":" )

Таким образом, это выглядит так:,Где вы пытаетесь это прочитать?Может быть, вам нужно вручную декодировать значение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...