Najlepszy samouczek Klient żąda JSP W 2024 r. W tym samouczku możesz dowiedzieć się HttpServletRequest klasy,przykłady nagłówków HTTP,
Gdy przeglądarka żąda strony, wysyła szereg informacji nie można odczytać bezpośrednio do serwera WWW, ponieważ te informacje jako część informacji nagłówka HTTP mają być przekazywane. Można sprawdzić protokół HTTP, aby uzyskać więcej informacji.
W poniższej tabeli przedstawiono niektóre z najważniejszych treści nagłówka przeglądarki, po programowaniu sieciowym często można zobaczyć te informacje:
Informacja | opis |
---|---|
akceptować | Określa typ MIME przeglądarki lub innego klienta może obsługiwać. Jego wartość jest zwykle image / png lub image / jpeg |
Accept-Charset | Określa zestaw znaków do korzystania z przeglądarki. Na przykład, ISO 8859-1 |
Accept-Encoding | Należy określić rodzaj kodowania. Jego wartość jest zwykle gzip lub skompresować |
Accept-Language | Określ preferowany język klienta, serwlet nada priorytet zwraca zestaw wyników do języka potocznego konstytucji, jeśli aplet obsługuje tego języka słów. Na przykład en, en-us, gumy itp |
autoryzacja | Zidentyfikuj inny użytkownikom dostęp do chronionej hasłem stronie internetowej |
połączenie | Wskazuje, czy klient może obsłużyć HTTP stałe połączenie. Trwałe połączenie pozwala klientowi lub przeglądarka pobiera wielu plików w jednym wniosku. Keep-Alive wskazuje umożliwiają stałe połączenia |
Content-Length | Tylko w przypadku żądań POST, liczba bajtów danych post |
ciastko | Zwraca wcześniej wysłane do plików cookie w przeglądarce na serwerze |
gospodarz | Zwrócił uwagę, że oryginalnego URL nazwę hosta i numer portu |
If-Modified-Since | Pokaż tylko wtedy, gdy strona została zmodyfikowana w dniu określonym klient musi jedynie z tej strony. Serwer wysyła 304 jardów do klienta, że nie ma dostarczyły uaktualnione zasobem |
Jeśli-Niemodyfikowany-Since | I If-Modified-Since przeciwnie, tylko dokument nie został zmodyfikowany po określonej dacie, operacja zakończy się sukcesem |
Referer | Adres strony oznaczonej przez odniesienie. Na przykład, jeśli jesteś na stronie 1, a następnie link do strony 2, a następnie URL strony 1 zostanie włączony w przeglądarce żąda nagłówek strony 2 |
User-Agent | Jest używane do rozróżnienia różnych przeglądarek lub żądanie wysłane przez klienta, a także różne rodzaje przeglądarce aby powrócić inną treść |
javax.servlet.http.HttpServletRequest wniosek obiekt jest instancją klasy. Za każdym razem gdy klient zażąda stronę, silnik JSP będzie produkować nowy obiekt do reprezentowania żądanie.
Żądanie Obiekt zapewnia szereg metod, aby uzyskać informacje nagłówka HTTP, w tym danych formularzy, plików cookie, metod HTTP, i tak dalej.
Następnego wprowadzi jakiś wspólny nagłówek HTTP GET w metodach programowania JSP. Aby uzyskać szczegółowe informacje, patrz tabela poniżej:
Nie. | Sposób i opis |
---|---|
1 | Cookie [] getCookies () Zwraca tablicę wszystkich Cookie klienta |
2 | metody getAttributeNames wyliczenie () Zwraca kolekcję wszystkich właściwości nazwami Object Request |
3 | getHeaderNames wyliczenie () Zwraca kolekcję wszystkich nazw nagłówka HTTP |
4 | getParameterNames wyliczenie () Zwraca kolekcję wszystkich parametrach żądania |
5 | HttpSession getSession () Zwraca żądać odpowiedniego obiektu sesji, jeśli nie, utworzyć |
6 | HttpSession getSession (logiczna utworzyć) Zwraca żądać odpowiedniego obiektu sesji gdy żaden z parametrów i tworzenia jest prawdą, zwraca nowy obiekt sesji |
7 | Locale getLocale () Zwraca obiekt ten strona Locale mogą być dostarczone w odpowiedzi |
8 | Object getAttribute (String name) Zwraca nazwę nazwę wartości atrybutu, a jeśli nie ma zerowy powrotu. |
9 | ServletInputStream getInputStream () Zwraca żądanie strumienia wejściowego |
10 | getAuthType String () Zwraca nazwę systemu uwierzytelniania wykorzystywane do ochrony aplet, takich jak "podstawowe" lub "SSL" lub null, jeśli nie ma środków ochronnych JSP |
11 | getCharacterEncoding String () Zwraca nazwę zestawu znaków wniosek kodowania |
12 | getContentType String () Zwraca typ MIME głównego żądania lub null, jeśli nie wiadomo |
13 | String getContextPath () Zwraca ścieżkę kontekst określony w żądaniu URI |
14 | String getHeader (String name) Zwraca nazwę podaną w nagłówku wiadomości |
15 | String getMethod () Zwraca metodę żądania HTTP, takie jak ,, GET POST, lub umieścić |
16 | String getParameter (String name) Zwraca nazwę wniosek parametr określony, lub null, jeśli nie istnieje |
17 | String getPathInfo () Zwraca dodatkowej ścieżki URL powiązany z tym wnioskiem |
18 | String getProtocol () Zwraca nazwę i wersję protokołu wykorzystywanego przez tę prośbę |
19 | getQueryString String () To zwraca wniosek ciąg zapytania URL zawiera |
20 | String getRemoteAddr () Zwraca adres IP klienta |
21 | String getRemoteHost () Zwraca pełną nazwę klienta |
22 | String getRemoteUser () Wrócił do klienta za pośrednictwem uwierzytelniania logowania użytkownika, jeśli użytkownik nie uwierzytelnienia lub null, |
23 | String getRequestURI () Zwraca URI żądania |
24 | String getRequestedSessionId () Zwraca określony wniosek identyfikator sesji |
25 | String getServletPath () Ścieżka Powrót aplet wymagane |
26 | String [] getParameterValues (String name) Zwraca parametr określa nazwę wszystkich wartości lub null, jeśli nie istnieje |
27 | logiczna isSecure () Zwraca czy żądanie szyfrowany kanał, takich jak HTTPS |
28 | int getContentLength () Zwraca liczbę bajtów zawartych w treści żądania lub -1 jeśli nie wiadomo |
29 | int getIntHeader (String name) Zwrócona wartość określa nazwę nagłówka żądania |
30 | int getServerPort () Zwraca numer portu serwera |
W tym przykładzie użyjemy metody getHeaderNames HttpServletRequest klasy () w celu zapoznania się z nagłówka HTTP. Ta metoda zwraca wyliczenie informacji nagłówka dla bieżącego żądania HTTP.
Po uzyskaniu obiektu wyliczanie, standardowy sposób przemierzać obiekt wyliczanie metoda hasMoreElements (), aby określić, kiedy należy zaprzestać stosowania metody nextElement (), aby uzyskać nazwę każdego parametru.
<%@ 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>本教程(w3write.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>
Dostęp main.jsp, otrzyma następujące wyniki:
Można spróbować innych metod klasy HttpServletRequest w powyższym kodzie.