Latest web development tutorials

клиентские запросы JSP

Когда браузер запрашивает страницу, он будет посылать ряд информации не может быть считана непосредственно на веб-сервере, так как эта информация как часть информации заголовка HTTP, подлежащих передаче. Вы можете проверить протокол HTTP, чтобы получить больше информации.

В следующей таблице перечислены некоторые из важных содержимое заголовка браузера, после сетевого программирования вы часто будете видеть эту информацию:

информация описание
принимать Определяет тип MIME браузера или другого клиента может справиться. Его значение, как правило , изображения / PNG или изображение / JPEG
Accept-Charset Определяет набор символов, используемый браузер. Например, ISO-8859-1
Accept-Encoding Укажите тип кодировки. Его значение, как правило , GZIP или сжимать
Accept-Language Укажите предпочтительный язык клиента, сервлет будет отдавать приоритет возвращать набор результатов на текущий язык конституции, если сервлет поддерживает этот язык слова. Например ан, ан-нас, о.е. и т.д.
авторизация Определить различный доступ пользователей к защищенным паролем веб-страницы
подключение Это указывает на то, может ли клиент обрабатывать HTTP постоянное соединение. Постоянное соединение позволяет клиенту или браузер получает несколько файлов в одном запросе. Keep-Alive указывает включить постоянные соединения
Content-Length Только для запросов POST, количество байт данных POST
печенье Возвращает ранее отправленных в куки браузера к серверу
хозяин Указал, что первоначальный URL имени хоста и номер порта
If-Modified-Since Показать только тогда, когда страница была изменена на указанном клиентом дата требуется только этот сайт. Сервер отправляет 304 ярдов к клиенту, что не существует никакой обновленной ресурсов
Если-Unmodified-С И If-Modified-Since, наоборот, только документ не был изменен после указанной даты, то операция будет успешной
Referer Адрес страницы, отмеченной в качестве ссылки. Например, если вы находитесь в странице 1, а затем ссылку на страницу 2, то страница URL 1 будет включен в браузере запрашивает заголовок страницы 2
User-Agent Он используется, чтобы различать между различными браузерами или запрос, отправленный клиентом, а также различные типы браузера, чтобы вернуть различное содержание

HttpServletRequest класс

javax.servlet.http.HttpServletRequest объект запроса является экземпляром класса. Всякий раз, когда клиент запрашивает страницу, JSP двигатель будет производить новый объект для представления запроса.

Объект запроса предоставляет ряд методов, чтобы получить информацию заголовка HTTP, в том числе данных форм, печенье, методы HTTP, и так далее.

Следующим будет ввести некоторые общие Get HTTP заголовок в методах программирования JSP. Для получения дополнительной информации смотрите таблицу ниже:

Нет . Метод и описание
1 Cookie [] getCookies ()

Возвращает массив всех Cookie клиента
2 Перечисление getAttributeNames ()

Возвращает коллекцию всех свойств имен объектных запросов
3 Перечисление getHeaderNames ()

Возвращает коллекцию всех имен заголовка HTTP
4 Перечисление getParameterNames ()

Возвращает коллекцию всех параметров запроса
5 HttpSession getSession ()

Возвращает запросить соответствующий объект сессии, если нет, то создать
6 HttpSession getSession (булево создать)

Возвращает запросить соответствующий объект сессии, если без параметров и создать истинно, возвращает новый объект сеанса
7 Locale GetLocale ()

Возвращает эту страницу Locale объект может быть предоставлена ​​в ответ
8 GetAttribute объекта (имя String)

Возвращает имя имени значения атрибута, а если нет возврата NULL.
9 ServletInputStream getInputStream ()

Возвращает запрос входного потока
10 Строка getAuthType ()

Возвращает имя схемы аутентификации, используемой для защиты сервлет, такие как "Basic" или "SSL" или нуль, если защитные меры JSP
11 Строка getCharacterEncoding ()

Возвращает заданное имя кодировки символов запроса
12 Строка getContentType ()

Возвращает тип MIME основного запроса, или нулевое значение, если не известно
13 Строка getContextPath ()

Возвращает путь контекста, указанный в запросе URI
14 Строка getHeader (имя String)

Возвращает имя, указанное в заголовке сообщения
15 Строка getMethod ()

Возвращает метод запроса HTTP, такие как GET ,, POST или PUT
16 Строка getParameter (имя String)

Возвращает имя параметра запроса указано, или нулевое значение, если не существует
17 Строка getPathInfo ()

Возвращает любые дополнительные URL путь, связанный с этим запросом
18 Строка getProtocol ()

Возвращает имя и версию протокола, используемого этим запросом
19 Строка getQueryString ()

Это возвращает запрос строки запроса URL содержит
20 Строка getRemoteAddr ()

Возвращает IP-адрес клиента
21 Строка getRemoteHost ()

Возвращает полное имя клиента
22 Строка getRemoteUser ()

Возвращается к клиенту через аутентификации входа пользователя, если пользователь не проходит проверку подлинности или нулевой
23 Строка getRequestURI ()

Возвращает URI запроса
24 Строка getRequestedSessionId ()

Возвращает указанный запрос на идентификатор сеанса
25 Строка getServletPath ()

Назад сервлет путь просил
26 String [] getParameterValues (имя String)

Возвращает параметр указывает имя всех значений, или нулевой, если не существует
27 булево isSecure ()

Возвращает запрос шифруется ли канал, такие как HTTPS
28 INT getContentLength ()

Возвращает число байтов, содержащихся в теле запроса, или -1, если неизвестно
29 INT getIntHeader (имя String)

Возвращаемое значение указывает имя заголовка запроса
30 INT getServerPort ()

Возвращает номер порта сервера

Примеры заголовков HTTP

В этом примере мы будем использовать метод getHeaderNames HttpServletRequest класс (), чтобы прочитать заголовок HTTP. Этот метод возвращает перечисление информации заголовка для текущего запроса HTTP.

После получения объекта Enumeration, стандартный способ обхода объекта Enumeration, метод hasMoreElements (), чтобы определить, когда прекратить использование метода nextElement (), чтобы получить имя каждого параметра.

<%@ 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 доступа, получите следующие результаты:

Вы можете попробовать другие методы класса HttpServletRequest в приведенном выше коде.