Lo leggo e scrivo qui qualche nota, a partire dal capitolo 1: perché usare servlets e JSP?
Il processo: un browser web permette all'utente di richiedere una risorsa (pagina html, immagine, suono, un documento pdf, ...); il server web riceve la richiesta, trova la risorsa e ritorna qualcosa all'utente.
Se non la trova l'utente ottiene l'errore 404 Not Found.
Il meccanismo richiesta (request) risposta (response) é gestito via HTTP per mezzo di metodi, i più comuni tra i quali sono GET e POST.
- GET: semplice richiesta al server per una risorsa.
- POST: é una richiesta a cui sono associati dei parametri.
- il numero di caratteri che si possono mandare é basso, e dipendente dal server;
- i dati mandati via GET sono appesi all'URL, sono quindi visibili all'utente;
Per una GET la richiesta é strutturata in questo modo:
Request line:
GET [path]?[param1]&[param2]& ... [paramN] HTTP/1.1
Request headers:
Host: ...
Per una POST, invece, le cose funzionano così:
Request line:
POST [path] HTTP/1.1
Request headers:
Host: ...
...
Accept: text/html, ...
...
Message body (o "payload"):
[param1]&[param2]& ... [paramN]
La risposta HTTP é strutturata così:
Response Headers:
HTTP/1.1 200 OK
Set-Cookie: ...
Content-Type: text/html
...
Response body:
<html>
...
</html>
Il Content-Type indica il tipo (MIME) che identifica la risorsa reperita. Vedi anche il campo Accept della request.
La richiesta di pagine web statiche é gestita direttamente dall'applicazione web server. Nel caso di richiesta di pagine dinamiche, si appoggia ad un altra applicazione sul server.
Le applicazioni classiche che si occupano della generazione di pagine dinamiche sono programmi CGI (Common Gateway Interface) scritti tipicamente in Perl, C, Python e PHP. Per Java si parla di servlet e JSP.
Nessun commento:
Posta un commento