Какие нарушения кодировки URL обычно допускают браузеры? - PullRequest
2 голосов
/ 05 апреля 2011

Веб-браузеры, как правило, делают все возможное для восстановления искаженных URL-адресов.

Давайте начнем с базового запроса Google.

http://www.google.com/search?q=myquery

В результате мой браузер (последняя сборка Chrome) запросил.

GET http://www.google.com/search?q=myquery HTTP / 1.1

Очевидно, вполне ожидаемое поведение.

Давайте попробуем поместить в микс неэкранированный пробел.

http://www.google.com/search?q=my запрос

GET http://www.google.com/search?q=my%20query HTTP / 1.1

Что если мы используем символ%? Поскольку за ним не следует допустимый код символа, браузер должен экранировать его до% 25

http://www.google.com/search?q=i всегда дают 100%

GET http://www.google.com/search?q=i%20always%20give%20100% HTTP / 1.1

Хрому не удалось избежать%!

Является ли подстановка пробелов единственным преобразованием URL-адресов, которое будет / ожидается выполнять обычный браузер? Существуют ли библиотеки для выполнения таких «преобразований» URL-адресов?

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