Hypertext Transfer Protocol

Úr Wikipediu, frjálsa alfræðiritinu
Stökkva á: flakk, leita
Mynd af HTTP beiðni gerð í gegnum Telnet, beiðnin, svarhausinn og svarbúkurinn eru litaðir

Hypertext Transfer Protocol (HTTP) er aðferð til að senda eða taka við gögnum á veraldarvefnum. Upprunalegi tilgangurinn var að birta HTML síður, þótt núna sé HTTP notað til að hlaða niður myndum, hljóði, leikjum, textaskjölum og margmiðlun af allri gerð. Venjulega eru HTTP skilaboð alltaf í pörum, beiðni frá biðlara og svar frá miðlara. HTTP Skilaboð eru byggð upp af HTTP haus og síðan gögnunum sjálfum. Til að skilja á milli gagnanna og haussins eru notuð tvö auð línubil. Nýjasta staðlaða útgáfa HTTP er HTTP 1.1. HTTP/2.0 „SPDY“, hönnuð af Google og notuð af nokkrum vöfrum og netþjónum Google, er í stöðlun hjá IETF.[1]

Bygging skilaboða[breyta]

Hér er dæmi um HTTP 1.1 beiðni:

GET /wiki/Notandi:SvartMan HTTP/1.1
Host: is.wikipedia.org

Með ímynduðu svari:

HTTP/1.1 200 OK
Date: Mon, 22 Desember 2008
20:40:00 GMT
Content-length: 85
Content-type: text/html
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="is" lang="is" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
...
</head>
</html>

Athugið að línubil er notað til að skilja á milli hluta haussins, og tvö til að skilja á milli haussins og gagnanna.

Tegundir beiðna[breyta]

Algengasta tegund HTTP beiðnar er GET. Þar á eftir koma POST, CONNECT og HEAD. GET er notað til að biðja um upplýsingar, til dæmis vefsíðu. POST er notuð til að senda skipun, í mjög víðri merkingu. Þannig má nota POST til að bæta ummælum við bloggfærslu, breyta grein á Wikipediu eða framkvæma millifærslu í netbanka. HEAD er notað til að biðja um upplýsingar um skjal sem má ná í með GET. Svar við HEAD beiðni getur sagt til um hvort skjalið er til, ágiskun á stærð þess og dagsetningu seinustu breytingar.

POST og PUT beiðnirnar eru sérstakar að því leyti að þeim fylgir skjal. Til að skipa fyrir yfir HTTP er byrjað á því að ná í eyðublað með GET. Eyðublaðið sendir notandinn svo til baka útfyllt með POST beiðni. Vefþjónninn bregst þá við með því að framkvæma aðgerðina. Sending skipunar yfir net er torveld að því leyti að erfitt getur verið að fá staðfest hvort eyðublaðið hefur komist til skila eða ekki ef netsamband rofnar við lok sendingar. Þó að netsamband komist aftur á, er ekki víst að þorandi sé að endursenda eyðublaðið ef ske kynni að aðgerðin verði þá tvítekinn. Til dæmis sami reikningur tvígreiddur.

GET
Sækja skjal.
POST
Framkvæma aðgerð.
CONNECT
(tæknilegt) til þess að nota undirliggjandi (TCP) tengingu í annað en hreint HTTP. Til dæmis dulkóðað HTTP, HTTPS.
HEAD
Sækja haus sem hefði fylgt skjali sóttu með GET.
PUT
Senda nýja útgáfu af skjali.
DELETE
Eyða skjali.
TRACE
Fá beiðnina endursenda. Notað til að athuga hvort beiðni hefði verið breytt á leiðinni.
OPTIONS
Spyrja hvers konar beiðnir eru studdar.


Heimildir[breyta]

  1. Drög IETF að HTTP/2.0 byggð á SPDY frá árinu 2012

„Web APIs Basics“ bls: 1, skoðað þann desember 2008.
Ovidio Limited. „Http.eu“ (enska), skoðað þann desember 2008. (sem vísar einnig á ensku Wikipediu)
Fyrirmynd greinarinnar var „HyperText Transfer Protocol“ á ensku útgáfu Wikipedia. Sótt desember 2008.