Skip to content

HttpResponse i HttpRequest

Tomasz Komoszeski edited this page Mar 6, 2017 · 2 revisions

HttpRequest

Obiekt request implementuje metody zgodnie z interfejsem HttpServletRequest. Najważniejsze z nich zostały przedstawione na slajdzie. Ich znaczenie jest następujące:

• Cookie[] getCookies() - udostępnia tablicę zmiennych Cookies przekazanych przez klienta HTTP,

• String getHeader(n) - udostępnia wartość wskazanego pola nagłówka żądania HTTP,

• String getMethod() - wskazuje komendę HTTP użytą w żądaniu, np. GET, POST,

• String getRemoteUser() - zwraca nazwę, pod jaką użytkownik końcowy został uwierzytelniony,

• HttpSession getSession() - odczytuje lub tworzy obiekt aktualnej sesji (sesjami serwletów zajmiemy się w dalszej części wykładu),

• String getParameter(n) - odczytuje wartość wskazanego parametru żądania HTTP,

• String getRemoteAddr() - zawiera adres IP komputera, z którego pochodzi żądanie HTTP.

HttpResponse

Drugim argumentem metody doGet() lub doPost() jest obiekt response, reprezentujący odpowiedź HTTP. Obiekt reponse implementuje metody zgodne z interfejsem HttpServletResponse. Najważniejsze z nich zostały przedstawione na slajdzie. Ich znaczenie jest następujące:

• void addCookie(c) - umieszcza w nagłówku odpowiedzi HTTP zmienną Cookie,

• void addHeader(n,v) - dołącza pole nagłówka do odpowiedzi HTTP; jeżeli takie pole zostało już dołączone wcześniej, to staje się wielowartościowym,

• void sendError(v) - określa kod zwrotny odpowiedzi HTTP,

• void sendRedirect(url) - wysyła kod zwrotny 302 (Moved Temporarily), powodujący przekierowanie klienta HTTP pod nowy adres URL,

• void setHeader(n,v) - nadaje wartość wskazanemu polu nagłówka odpowiedzi HTTP, nadpisując ew. wartość dotychczasową,

• PrintWriter getWriter() - zwraca obiekt wyjściowego strumienia alfanumerycznego, poprzez który zostanie przekazana treść ciała odpowiedzi HTTP; może służyć np. do wysłania dokumentu HTML

• ServletOutputStream getOutputStream() - zwraca obiekt wyjściowego strumienia binarnego, poprzez który zostanie przekazana treść ciała odpowiedzi HTTP; może służyć np. do wysłania obrazu GIF

• void flushBuffer() - wymusza wysłanie buforowanej odpowiedzi HTTP do klienta HTTP; jeśli ta metoda nie zostanie wywołana, wtedy odpowiedź zostanie wysłana po zakończeniu metody doGet() lub doPost()

Więcej informacji na https://docs.oracle.com/javaee/7/api/javax/servlet/http/package-summary.html

Clone this wiki locally