En-tête HTTP' actualiser'
J'automatise une application web (le suivi des bogues Mantis) et j'en reçois un en-tête de réponse intéressant, appelé Refresh:
HTTP/1.x 200 OK
...
Refresh: 0;url=my_view_page.php
Il semble agir de la même manière que meta refresh, et la technique meta refresh implique qu'il s'agit d'un équivalent D'un en-tête dans HTTP.
Le problème est que je ne trouve aucune mention de l'en-tête Refresh dans la norme HTTP ou toute autre documentation définitive sur la façon dont il doit être analysé et ce que le navigateur devrait faire quand il rencontre.
Que se passe-t-il ici?
5 réponses
Pour autant que je sache, Refresh (avec Set-Cookie et éventuellement d'autres pseudo-en-têtes propriétaires) ont été créés par Netscape au tout début d'internet et ont été fondamentalement (mais pas tout à fait) standard depuis lors. Parce qu'à peu près tous les navigateurs le supportent, Refresh est assez sûr à utiliser-et l'est généralement.
Je suppose que cela n'a jamais fait partie des normes officielles parce qu'ils avaient déjà des dispositions pour cela avec les codes d'état.
De la spécification W3C HTML 4.01, citation:
En-têtes META et HTTP
L'attribut http-equiv peut être utilisé à la place de l'attribut name et a une signification particulière lorsque des documents sont récupérés via le protocole de transfert hypertexte (HTTP). Les serveurs HTTP peuvent utiliser le nom de propriété spécifié par l'attribut http-equiv pour créer un en-tête de style [RFC822] dans la réponse HTTP. Veuillez consulter la spécification HTTP ([RFC2616]) pour plus de détails sur HTTP valide tête.
Cela signifie que lorsque vous utilisez la balise <meta http-equiv="refresh" url="..."/>
, vous demandez au navigateur d'agir comme s'il y avait un en-tête Refresh
Envoyé.
Un bon aperçu de l'histoire de peut être trouvé à http://www.securiteam.com/securityreviews/6Z00320HFQ.html
Selon Wikipedia: Redirection URL :
Ceci est un propriétaire / non-standard extension par Netscape. Il est pris en charge par la plupart des navigateurs web.
Je crois que c'était à L'origine une extension Netscape, et n'était pas standardisée car elle est obsolète par le W3C:
C'est probablement une extension Microsoft à HTTP; au moins ils suggèrent son utilisation sur Comment: activer L'extraction du Client pour les serveurs Web, les Sites et les dossiers et cela semble confirmer la syntaxe meta refresh.