...
HTTP Working Group er en Gruppe innen IETF, dannet i 1994, som spesifisk fokuserer på å forbedre HTTP protokollen.
2. Ønsket funksjonalitet
I HTTP/0.9 merket man et behov for å få tilbake mer informasjon om dataen som ble hentet eller sent, og det er dette problemet header extensions løser. For eksempel kan man sende enkel informasjon som versjon eller tid, eller bruke dem for å endre responsen man får om det har blitt gjort endringer etter et bestemt tidspunkt. Dette kan være en stor hjelp for troubleshooting.
3. Virkemåte
En header extension består av et navn, kolon ':' og en verdi.
Headere blir gjerne organisert i fire kategorier, avhengig av det de gir informasjon om:
...
Disse custom headerene begynner traditionelt med x- i navnet sitt, slik at man lett kan skille dem fra standard headere. Men i 2012 avgjorde IETF i RFC6648 at man burde slutte og legge til denne ekstra x-en forann navnet, da dette egentlig kompliserer ting om denne headeren skulle bli standardisert.
Eksempel:
Når du går inn på hjemsiden i itslearning, blir følgende forespørsel sendt får å hente instantmessage:
Den første linjen er selve forespørselen. Den informerer om metoden som er brukt (GET), stien (/instantmessage/instantmessage), og protokollen som er brukt (HTTP/1.1)består av tre elementer:
- Metoden, oftest GET, POST eller HEAD
GET brukes generelt for å hente dokumenter (HTML, JavaScript, CSS, bilder, osv)
POST brukes generelt i web forms for å sende større mengder med data
HEAD brukes når man ønsker å få tilbake responsen og headerene, heller en dokumentet - Stien til ressursen, ekskludert host
- Protokollen som blir brukt, oftest 1.1 i moderne nettlesere
Resten er HTTP headere i formen 'navn: verdi' og gir litt mer informasjon om forespørselen og nettleseren. De fleste av disse dem er valgfrie, og forespørselen kunne funket uten dem.
Deretter I samme eksempel, får du følgende respons:
Den første linjen er status linjen, resten . Her finner man Protokollen igjen, og statuskoden fulgt av en kort melding. Godt kjente statuskoder inkluderer '404 Not found' og '500 Internal server Error'.
Resten er headere, som informerer om serveren og responsen, for eksempel når filen sist ble endret. De fleste av disse headerene er igjen valgfrie.
Under headerene og under der igjen kommer selve HTML-en (ikke inkludert i bildet).
Beskrivelse av løsning, aktuelle protokoller, fangster med wireshark, statistikker og annet
4. Kilder
https://hpbn.co/brief-history-of-http/ - Litt HTTP historie
https://code.tutsplus.com/tutorials/http-headers-for-dummies--net-8039 - HTTP Headers for dummies
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers - Liste over standard headers
...