Сколько времени URL-адрес может получить Internet Explorer 9?
В прошлых версиях Internet Explorer проклинали веб-адреса длиной более 2083 символов (см. Http://support.microsoft.com/kb/208427 ). Тем временем Firefox, Opera и Safari могут обрабатывать не менее 80 000.
Версия 9 приносит много улучшений. Является ли длина URL одной из них?
- Selenium WebDriver очень медленно печатает в текстовом поле в браузере IE
- Поддерживает ли Internet Explorer переходы CSS?
- Excel VBA Управление локальной локальной сетью IE
- Visual Studio открывает браузер по умолчанию вместо Internet Explorer
- Пользовательский агент IE10 заставляет ASP.Net не отправлять обратно Set-Cookie (IE10 не устанавливает cookies)
- Разница между «Режим браузера» и «Режим документа» в Internet Explorer
- для IE дает полный путь, требуется только имя файла
- Невозможно отобразить PDF из HTTPS в IE 8 (на 64-разрядной версии Vista)
- Эмуляция пограничного радиуса CSS3 и box-shadow в IE7 / 8
- favicon не работает в IE
- CSS3 PIE - Предоставление поддержки пограничного радиуса IE не работает?
- Угловой 2/4/5 не работает в IE11
- Должны ли мы поддерживать IE6 больше?
Не самый точный ответ, но он выглядит как 2083 символа в адресной строке и 5165 символов при выполнении ссылки.
(Не является официальным, просто подключил URL-адрес с 41 000 символов в тестовый HTM-файл и использовал Javascript для запроса длины URL-адреса.)
Обновить:
Чтобы воспроизвести тест, создайте файл HTML с элементом привязки, атрибут HREF которого составляет 6000 символов. Откройте файл в своем браузере и нажмите ссылку. Затем откройте консоль и проверьте window.location.href.length
.
Следуя этой процедуре в IE9 сегодня, она сообщает длину как 5165 символов. Если я загружаю один и тот же URL вручную через адресную строку, он сообщает 2083 символа.
Для чего это стоит, IE, кажется, усекает URL-адрес перед отправкой запроса. Если в атрибуте HREF привязки будет указан URL из 24 000 символов, IE будет следовать за ссылкой, но на полученной странице будет указана длина URL-адреса 5165 символов. Следуя той же ссылке в Chrome, вы получаете ответ HTTP 414 от моего тестового сервера.
Я получаю 5120 символов в URL-адресе для интернет-исследователя 9.
Ни в коем случае окончательный тест, но следующий демонстрирует быструю проверку длины URL-адреса атрибута href в привязном теге.
Test
Я написал этот тест, который продолжает добавлять параметр 'a'
до тех пор, пока браузер не завершит работу
C # часть:
[AcceptVerbs(HttpVerbs.Get)] public ActionResult ParamTest(string x) { ViewBag.TestLength = 0; if (!string.IsNullOrEmpty(x)) { System.IO.File.WriteAllLines("c:/result.txt", new[] {Request.UserAgent, x.Length.ToString()}); ViewBag.TestLength = x.Length + 1; } return View(); }
Посмотреть:
Я добавил дополнительные ограничения для IISExpress applicationhost.config
и настройки web.config
maxQueryStringLength="32768"
.
также добавлено в конфигурацию
который совсем не помог, наконец решил использовать скрипач для удаления реферирования из заголовка.
static function OnBeforeRequest(oSession: Session) { if (oSession.url.Contains("localhost:50766")) { oSession.RequestHeaders.Remove("Referer"); }
Что было красиво.
В IE9 я получил
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) 4043