Действия JSP, которые используют конструкции в синтаксисе XML для управления поведением механизма сервлета. Мы узнаем более подробно о различных элементах JSP Action, таких как запрос клиента, ответ сервера, коды состояния HTTP.
В этом руководстве вы узнаете:
Запрос клиента JSP
Ответ сервера JSP
Коды состояния JSP HTTP
Запрос клиента JSP
Когда веб-страница запрашивается, она отправляет информацию на веб-сервер в заголовке HTTP.
Мы можем использовать эту информацию с помощью объекта HTTPServletRequest.
Информация, отправляемая браузером, хранится в заголовке запроса HTTP-запроса.
Мы используем разные заголовки для отправки информации объекту запроса.
Ниже описаны различные заголовки:
Заголовок
Описание
Пример
Принимать
Он определяет типы MIME, которые браузер или другие клиенты могут обрабатывать.
Изображение / png или изображение / jpeg.webp
Принять-кодировка
Он использует набор символов, используемый браузером для отображения информации.
ISO-8859-1
Принять- Кодирование
Он определяет тип кодировки, обрабатываемой браузером.
Gzip или сжатие
Принять-язык
Он определяет указанный клиентом язык
En, en_us
Авторизация
Заголовок, используемый клиентами при попытке доступа к веб-страницам, защищенным паролем
Связь
Он указывает, может ли клиент обрабатывать постоянные HTTP-соединения (браузер может получать несколько файлов)
Keep-alive
Длина содержимого
Применимо к размещению запросов. Он дает размер пост-данных в байтах
Cookie-файлы
Возвращает cookie на сервер (те, которые ранее были отправлены в браузер)
Хозяин
Задает хост и порт исходного URL-адреса.
Если изменено с
Это указывает на то, что ему требуется только страница, если она была изменена или модифицирована.
Если не изменено с
Это означает, что страница требуется только в том случае, если она не была изменена или модифицирована.
Реферер
Указывает URL-адрес ссылающейся URL-страницы
Пользователь-агент
Идентифицирует браузер или клиент, делающий запрос
Для чтения заголовка HTTP на странице JSP используются следующие методы:
Перечисление getAttributeNames () - содержит перечисление имён атрибутов для запроса
Перечисление getHeaderNames () - содержит перечисление имен заголовка.
Перечисление getParameterNames () - содержит перечисление имен получаемых параметров в запросе.
HttpSessiongetSession () - возвращает текущий сеанс, связанный с запросом, или, если сеанса нет, он создаст новый.
Locale getLocale () - возвращает предпочтительный языковой стандарт, в котором клиент будет принимать контент. Он был назначен ответу. По умолчанию значение будет локалью сервера по умолчанию.
Object getAttribute (String name) - возвращает значение названного атрибута как объекта.
ServletInputStreamgetInputStream () - получает тело запроса в виде двоичных данных.
String getAuthType () - возвращает имя схемы аутентификации для защиты сервлета
String getCharacterEncoding () - возвращает название кодировки символов, использованной в теле запроса.
String getContentType () - возвращает MIME-тип тела запроса.
String getContextPath () - возвращает часть URI запроса, указывающую контекстный путь URI
String getHeader (String name) - возвращает заголовок запроса в виде строки
String getMethod () - возвращает имя метода HTTP, например GET, POST
String getParameter (String name) - возвращает параметр запроса в виде строки.
String getPathInfo () - возвращает информацию о пути, связанную с URL-адресом
Строка кода 17: Используя объект запроса, мы получаем объект сеанса этого конкретного сеанса, и мы получаем значение объекта этого сеанса.
Строка кода 19: Используя объект запроса, мы получаем языковой стандарт этого конкретного сеанса i.een_US locale для этого JSP.
Строка кода 21: Используя объект запроса, мы получаем информацию о пути для этого JSP. В этом случае он имеет значение NULL, поскольку не указан путь к URL-адресу.
Строка кода 23: Используя объект запроса, мы получаем контекстный путь, то есть корневой путь
Строка кода 25: Используя объект запроса, мы получаем имя сервера.
Строка кода 27: Используя объект запроса, мы получаем порт сервера.
Строка кода 29-35: Используя объект запроса, мы получаем имена заголовков, которые выводятся как перечисление, и, следовательно, мы получаем все значения заголовков в именах заголовков.
В этом случае мы получаем все значения заголовка как cookie, хост, соединение, принимаем язык, принимаем кодировку.
Когда вы выполните приведенный выше код, вы получите следующий результат:
Выход :
Мы получаем ряд значений, таких как имя сеанса, имя локали, имя пути, имя сервера, имя порта, хост, путь контекста и все значения заголовка этого JSP.
Ответ сервера JSP
Когда запрос обрабатывается, а затем генерируется ответ от веб-сервера. Он состоит из строки состояния, заголовков ответов, пустой строки и документа.
Это объект класса HTTPServletResponse, который является объектом ответа.
Строка состояния - это версия HTML.
Заголовки ответа указаны ниже:
Заголовок
Описание
Позволять
Он определяет методы запроса, такие как GET, POST, которые запрашивает сервер.
Кэш-контроль
Документ ответа можно кэшировать. Он может быть публичным, частным и без кеша. Отсутствие кеширования указывает, что документ не должен кэшироваться
Связь
Он указывает, должен ли браузер использовать сохраненные HTTPConnections или нет. Значение Close означает, что браузер не должен использовать постоянные соединения в HTTPConnections, а "keep-alive" означает использование постоянных соединений.
Content-Disposition
Спрашивать пользователя, сохранять ответ на диск или нет
Кодирование содержимого
Страница должна быть закодирована во время передачи
Длина содержимого
Количество байтов в ответе
Тип содержимого
Он определяет тип ответа MIME.
Истекает
Указывает, до каких пор содержимое следует считать устаревшим и не кэшировать.
Последнее изменение
Указывает, когда документ был в последний раз изменен.
Место расположения
Он должен быть включен во все ответы, в которых код состояния имеет код состояния 300.
Обновить
Он указывает, как найти обновленную страницу.
Повторить после
Его можно использовать с ответом 503, чтобы сообщить клиенту, как скоро он может повторить запрос.
Set-cookie
Определяет файл cookie, связанный со страницей
Ниже приведены методы, использующие объект ответа:
String encodeRedirectURL (String URL) - кодирует URL в методе redirectURL.
String encodeURL (String URL) - кодирует URL, включая идентификатор сеанса.
Boolean containsHeader (String name) - содержит заголовок в JSP или нет.
Boolean isCommited () - ответ был подтвержден или нет.
Void addCookie (Cookie cookie) - добавляет cookie в ответ
Void addDateHeader (String name, String value) - добавляет имя и значение даты заголовка ответа
Void addHeader (String name, String value) - добавляет заголовок ответа с именем и значением
Void addIntHeader (String name, int value) - добавляет заголовок ответа с именем и целочисленным значением