HTTP-заголовок "Обновить"
Я автоматизирую веб-приложение (отслеживание ошибок Mantis), и я получаю от него интересный заголовок ответа под названием Refresh:
HTTP/1.x 200 OK
...
Refresh: 0;url=my_view_page.php
Кажется, что он действует так же, как meta refresh, а метод метаобработки означает, что он является эквивалентом заголовка в HTTP.
Проблема в том, что я не могу найти упоминания заголовка Refresh в HTTP-стандарте или любую другую окончательную документацию о том, как это должно быть проанализирован и что браузер должен делать, когда он встречает его.
Что здесь происходит?
Ответы
Ответ 1
Насколько я знаю, Refresh (вместе с Set-Cookie и, возможно, некоторые другие проприетарные псевдо-заголовки) были созданы Netscape в самые ранние дни Интернета и были в основном (но не совсем) стандартными с тех пор. Поскольку почти каждый браузер поддерживает его, Refresh довольно безопасно использовать - и обычно это.
Я думаю, он никогда не становился частью официальных стандартов, потому что у них уже были положения для этого со статусом.
Ответ 2
из спецификации W3C HTML 4.01, цитата:
Заголовки META и HTTP
Атрибут http-equiv можно использовать вместо атрибута name и имеет особое значение, когда документы извлекаются через протокол передачи гипертекста (HTTP). HTTP-серверы могут использовать имя свойства, указанное атрибутом http-equiv, для создания заголовка [RFC822] в ответе HTTP. Подробнее о действительных HTTP-заголовках см. В спецификации HTTP ([RFC2616]).
Это означает, что при использовании тега <meta http-equiv="refresh" url="..."/>
вы на самом деле инструктируете браузер действовать так, как если бы был отправлен заголовок Refresh
.
хороший обзор истории его можно найти на http://www.securiteam.com/securityreviews/6Z00320HFQ.html
Ответ 3
Согласно Википедия: Перенаправление URL:
Это проприетарный/нестандартный расширение Netscape. Он поддерживается большинством веб-браузеров.
Ответ 4
Я считаю, что это было первоначально расширение Netscape и не было стандартизировано, потому что оно устарело W3C:
http://www.w3.org/TR/WCAG10-HTML-TECHS/#meta-element
Ответ 5
Вероятно, это расширение Microsoft для HTTP; по крайней мере, они предлагают использовать его на КАК: Включить перенос клиента для веб-серверов, сайтов и папок и, похоже, подтверждает метаобъявление синтаксис.