Get Started. It's Free
or sign up with your email address
Rocket clouds
HTTP by Mind Map: HTTP

1. Request

1.1. Request Line

1.1.1. Method

1.1.2. Resource

1.1.3. Protocol

1.1.4. ej: GET /foo.html HTTP/1.1

1.2. Headers

1.2.1. Host www.example.com

1.2.1.1. Obligatory

1.2.2. Accept: */*

1.2.3. Cookie: key=value; foo=bar;

1.2.4. Accept-Encoding: gzip,deflate

1.2.5. User-Agent: Mozilla/5.0 (X11)

1.2.5.1. Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Ubuntu/10.04 Chromium/9.0.597.19 Chrome/9.0.597.19 Safari/534.13

1.2.6. Accept-Language: es-AR, en-US

1.3. Message Body

1.3.1. Optional, mostly used in POST & PUT

2. Response

2.1. Status Line

2.1.1. Protocol

2.1.2. Status Code

2.1.2.1. 1xx - Informational

2.1.2.2. 2xx - Success

2.1.2.3. 3xx - Redirection

2.1.2.4. 4xx - Client Error

2.1.2.5. 5xx - Server Error

2.1.3. Reason Phrase

2.1.4. ej: HTTP/1.1 404 Not Found

2.2. Headers

2.2.1. Date: Fri, 31 Dic 2010 22:38:34 GMT

2.2.2. Server: Apache/2.2.14 (Ubuntu)

2.2.3. Content-Encoding:gzip

2.2.4. Content-Type: text/html; charset=utf-8

2.2.5. Content-Length: 306

2.2.6. Set-Cookie:lang=en; session=123;

2.2.7. Cache-Control: max-age

2.2.8. X-Runtime: 45

2.3. Body

2.3.1. <html> <head></head> <body></body> </html>

3. Cookies

3.1. Stored In Browser

3.1.1. javascript: document.cookie

3.1.2. Max ~4kb

3.1.3. Max ~300 cookies

3.2. Formato

3.2.1. key=value

3.2.2. Expiration

3.2.2.1. Sesion

3.2.2.2. Fecha

3.2.2.2.1. expires=Fri, 31-Dec-2010 23:59:59 GMT

3.2.3. Path

3.2.3.1. path=/

3.2.3.2. Indica para que URLs se usa

3.2.3.2.1. todo lo que empiece con bajo ese path

3.2.4. Domain

3.2.4.1. domain=.example.com

3.2.4.2. Indica para que dominios se usa

3.2.4.2.1. el caso de .example.com es para todos los subdominios de example.com

3.2.5. Secure

3.2.5.1. secure=true

3.2.5.2. Indica si se usa solo para conexiones seguras (SSL, TLS, HTTPS)

3.3. Envio

3.3.1. Request

3.3.1.1. Header Cookie: key=value; foo=bar;

3.3.2. Response

3.3.2.1. Header Set-Cookie: key=value; [metadata]; foo=bar;

3.4. Expiry

3.4.1. End of session

3.4.2. Expiration Date passed

3.4.3. Expiration date is changed to the past

3.4.4. Browser deletes it by request

3.5. Uses

3.5.1. Session management

3.5.1.1. session_id

3.5.2. Personalization

3.5.2.1. Ej: amazon

3.5.2.2. Session

3.5.2.3. Data en la cookie

3.5.3. Tracking

3.5.3.1. Ej: google analytics

3.5.4. First-Party

3.5.5. Third-Party

4. Methods

4.1. GET

4.1.1. Requests a representation of the specified resource. SHOULD NOT have the significance of taking an action other than retrieval

4.2. POST

4.2.1. Submits data to be processed (e.g., from an HTML form) to the identified resource. The data is included in the body of the request.

4.2.1.1. This may result in the creation of a new resource or the updates of existing resources or both.

4.3. PUT

4.3.1. Uploads a representation of the specified resource.

4.4. DELETE

4.4.1. Deletes the specified resource.

4.5. HEAD

4.5.1. Same as GET but only retrieves headers information

5. REST

5.1. Representational State Transfer

5.1.1. http://en.wikipedia.org/wiki/Representational_State_Transfer