HTTP Requests! Nieuw?
HTTP requests is waar je ongelooflijk veel van gebruikt, maar waarschijnlijk niets van merkt en niets van weet. Waarom niet? Omdat je browser ze afhandelt.
HTTP Headers
Je browser stuurt een aantal HTTP Headers naar een website en krijgt dan een aantal HTTP Headers terug, met een beetje data (of niet). Die data heeft een Content Type.
Het standaard Content Type die een website terug stuurt, is text/html. De browser ontvangt data met text/html als Content Type en weet dan hoe ze dat moet implementeren (als HTML, dus tags worden vervangen door opmaak).
Je kan het content type dat een website 'verstuurt', veranderen met de PHP functie header(). Logisch toch!? :)
De functie header() neemt 1 parameter die de header bepaalt, maar die bestaat altijd uit twee onderdelen. Een naam en een waarde.
Een voorbeeld van een HTTP Header is dus Content Type:
Het is interessant hoeveel macht een HTTP Header heeft en hoe makkelijk een header te versturen is :) Als je de bovenstaande header verstuurt op een website en die website opent in je browser, zal de output - of er nou HTML, XML of wat dan ook in staat - plain text zijn. Je ziet elk mogelijk karakter dus als gewoon karakter. De "source" van de pagina zal precies hetzelfde zijn als wat je in je venster ziet.
Een paar content-types:
- text/html
- text/plain
- text/xml
- image/gif
- image/png
- audio/mpeg-object
Je hebt het misschien niet door, maar nu snap je HTTP Headers.
Een "standaard" HTTP Header 'blok' (response, niet request):
2
3
4
5
6
Date: Mon, 23 May 2005 22:38:34 GMT
Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)
Content-Length: 438
Connection: close
Content-Type: text/html; charset=UTF-8
De eerste regel is wat voor iets er terug komt uit de server, naar aanleiding van de request. De STATUS regel. 200 is status "OK".
"HTTP/1.1 200 OK" is goed :)
Ik had gezegd een voorbeeldje, maar dat moet nog heel eventjes wachten :)
Eerst wat er voorgaat aan de response: de request...
Inhoudsopgave
- De functies
- HTTP Requests! Nieuw?
- GET en POST requests
- Duidelijkheid en verwerking
- secrets in http headers
- Afsluiting
- request
- request
- response
- response