Latest web development tutorials

le richieste dei client JSP

Quando un browser richiede una pagina, invierà una serie di informazioni non possono essere letti direttamente al server web, poiché queste informazioni come parte delle informazioni di intestazione HTTP da trasmettere. È possibile controllare il protocollo HTTP per avere maggiori informazioni.

La seguente tabella elenca alcuni dei contenuti importanti del intestazione del browser, dopo la programmazione di rete vedrete spesso queste informazioni:

informazioni descrizione
accettare Specifica il tipo MIME di browser o altri client in grado di gestire. Il suo valore è di solito image / jpeg o image / jpeg
Accept-Charset Specifica il set di caratteri da utilizzare il browser. Ad esempio, ISO-8859-1
Accept-Encoding Specificare il tipo di codifica. Il suo valore è di solito gzip o comprimere
Accept-Language Specificare la lingua preferita dal cliente, servlet darà la priorità per restituire un set di risultati per la lingua corrente della costituzione, se il servlet supporta queste parole della lingua. Per esempio it, it-it, ru etc.
autorizzazione Identificare l'accesso agli utenti diverso alla pagina Web protetta da password
collegamento Indica se il client in grado di gestire HTTP connessione persistente. connessione persistente permette al cliente o del browser recupera più file in una singola richiesta. Keep-Alive indica abilitare le connessioni persistenti
Content-Length Solo per le richieste POST, il numero di byte di dati POST
biscotto Restituisce precedentemente inviato ai cookie del browser al server
ospite Ha sottolineato che l'URL originale del nome host e il numero di porta
If-Modified-Since Mostra solo quando la pagina è stata modificata sul client data specificata necessita solo di questo sito. Il server invia 304 iarde al client che non vi è alcuna risorsa aggiornate
Se-non modificato-Since E If-Modified-Since Al contrario, solo il documento non è stato modificato dopo la data indicata, l'operazione avrà successo
referer URL della pagina segnata da riferimento. Ad esempio, se si è in pagina 1, poi un link alla pagina 2, quindi l'URL della pagina 1 sarà incluso nel browser richiede una intestazione di pagina 2
User-Agent E 'usato per distinguere tra diversi browser o richiesta inviati dal client, e le diverse tipologie di browser per tornare contenuti diversi

classe HttpServletRequest

javax.servlet.http.HttpServletRequest richiesta oggetto è un'istanza della classe. Quando un client richiede una pagina, il motore JSP produrrà un nuovo oggetto per rappresentare la richiesta.

richiesta oggetto fornisce una serie di metodi per ottenere le informazioni di intestazione HTTP, inclusi i dati dei moduli, cookie, metodi HTTP, e così via.

Il prossimo introdurrà alcuni un'intestazione HTTP Get comune nei metodi di programmazione JSP. Per ulteriori informazioni, si prega di vedere la tabella seguente:

No. Metodo & descrizione
1 Cookie [] getCookies ()

Restituisce un array di tutti i cookie del client
2 getAttributeNames Enumeration ()

Restituisce un insieme di tutte le proprietà dei nomi oggetto di richiesta
3 getHeaderNames Enumeration ()

Restituisce una raccolta di tutti i nomi dei HTTP
4 getParameterNames Enumeration ()

Restituisce una raccolta di tutti i parametri della richiesta
5 HttpSession getSession ()

Restituisce richiedere l'oggetto della sessione corrispondente, se non, creare un
6 HttpSession getSession (booleano creano)

Restituisce richiedere l'oggetto della sessione corrispondente se nessun parametro e creare è vero, restituisce un nuovo oggetto di sessione
7 Locale getLocale ()

Restituisce questo oggetto pagina Locale può essere fornito nella risposta
8 Oggetto getAttribute (String name)

Restituisce il nome del nome valore di attributo, e se non c'è nulla di ritorno.
9 ServletInputStream getInputStream ()

Restituisce una richiesta di flusso di input
10 String getAuthType ()

Restituisce il nome dello schema di autenticazione utilizzato per proteggere il servlet, come "base" o "SSL" o NULL se nessuna misura di protezione JSP
11 String getCharacterEncoding ()

Restituisce il nome del set richiesta di carattere codifica
12 String getContentType ()

Restituisce il tipo MIME della richiesta principale, o null se non è nota
13 String getContextPath ()

Restituisce il percorso del contesto specificato nella richiesta URI
14 String getHeader (String name)

Restituisce il nome specificato nell'intestazione del messaggio
15 String getMethod ()

Restituisce il metodo di richiesta HTTP, ad esempio GET ,, POST, PUT o
16 String getParameter (String name)

Restituisce il nome del parametro di richiesta specificato, o null se non esiste
17 String getPathInfo ()

Restituisce qualsiasi URL percorso aggiuntivo associato a questa richiesta
18 String getProtocol ()

Restituisce il nome e la versione del protocollo usato da questa richiesta
19 String getQueryString ()

Questo restituisce l'URL query di richiesta stringa contiene
20 String getRemoteAddr ()

Restituisce l'indirizzo IP del client
21 String getRemoteHost ()

Restituisce il nome completo del cliente
22 String getRemoteUser ()

Restituito al cliente attraverso l'autenticazione di accesso utente, se l'utente non esegue l'autenticazione o nullo
23 String getRequestURI ()

Restituisce l'URI della richiesta
24 String getRequestedSessionId ()

Restituisce la richiesta di ID sessione specificata
25 String getServletPath ()

percorso Indietro servlet richiesto
26 String [] getParameterValues (String name)

Restituisce parametro indica il nome di tutti i valori, o null se non esiste
27 boolean isSecure ()

Restituisce se la richiesta del canale criptato, come ad esempio HTTPS
28 int getContentLength ()

Restituisce il numero di byte contenuti nel corpo della richiesta, o -1 se sconosciuto
29 int getIntHeader (String name)

Il valore restituito specifica il nome dell'intestazione richiesta
30 int getServerPort ()

Restituisce il numero di porta del server

Esempi di intestazione HTTP

In questo esempio, useremo il metodo getHeaderNames HttpServletRequest classe () per leggere l'intestazione HTTP. Questo metodo restituisce una enumerazione di informazioni di intestazione per la richiesta HTTP corrente.

Dopo aver ottenuto l'oggetto Enumeration, il modo standard per attraversare l'oggetto Enumeration, il metodo hasMoreElements () per determinare quando smettere di usare il metodo nextElement () per ottenere il nome di ciascun parametro.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</title>
</head>
<body>
<h2>HTTP 头部请求实例</h2>
<table width="100%" border="1" align="center">
<tr bgcolor="#949494">
<th>Header Name</th><th>Header Value(s)</th>
</tr>
<%
   Enumeration headerNames = request.getHeaderNames();
   while(headerNames.hasMoreElements()) {
      String paramName = (String)headerNames.nextElement();
      out.print("<tr><td>" + paramName + "</td>\n");
      String paramValue = request.getHeader(paramName);
      out.println("<td> " + paramValue + "</td></tr>\n");
   }
%>
</table>
</body>
</html>

main.jsp accesso, otterrà i seguenti risultati:

È possibile provare altri metodi di classe HttpServletRequest nel codice sopra.