Поля формата сообщений RFC 822
| Поле
| Описание
|
| To:
| Адрес (адреса) основного получателя (получателей)
|
| Cc:
| Адрес (адреса) дополнительного получателя (получателей)
|
| Bcc:
| Адрес «слепой» копии
|
| From:
| Автор (авторы) сообщения
|
| Sender:
| Адрес отправителя
|
| Received:
| Идентификатор агента, дата, время получения и другая информация. Добавляется каждым агентом передачи на всем протяжении маршрута
|
| Return-Path:
| Композиция всех полей Received
|
В отличие от адреса дополнительного получателя (получателей) «слепая» копия позволяет скрыть от получателя факт пересылки данного сообщения так же и другим адресатам. В случае использования «обычной» копии в заголовке письма доставленного пользователю будет содержаться список всех адресов получателей данного письма.
Таблица 4
Поля стандарта MIME
| Заголовок
| Описание
|
| MIME-Version:
| Версия MIME
|
| Content-Description:
| Описание содержимого в виде простой текстовой строки
|
| Content-Id:
| Уникальный идентификатор
|
| Content-Transfer-Encoding:
| Способ кодировки сообщения
|
| Content-Type:
| Тип и формат содержимого сообщения
|
Таблица 5
Типы и подтипы заголовка Content-Type
| Тип
| Подтип
| Описание
|
| Text
| Plain Enriched
| Неформатированный текст Текст с включением простых команд форматирования
|
| Image
| Gif Jpeg
| Неподвижное изображение формата GIF Неподвижное изображение формата JPEG
|
| Audio
| Basic
| Звук
|
| Video
| Mpeg
| Видео в формате MPEG
|
| Application
| Octet-stream Postscript
| Неинтерпретируемая последовательность байтов Документ для печати в формате PostScript
|
| Message
| Rfc822 Partial External-body
| Сообщение MIME RFC 822 Сообщение разбито на части для передачи Само сообщение должно быть получено по сети
|
| Multipart
| Mixed Alternative Parallel Digest
| Независимые части в указанном порядке То же сообщение в другом формате Части сообщения просматривать одновременно Каждая часть – законченное сообщение RFC 822
|
HTTP
HTTP (HyperText Transfer Protocol) – протокол передачи гипертекста (табл. 6). Он является главным протоколом Всемирной паутины (World Wide Web) и описывает формат сообщений, которыми могут обмениваться клиенты и серверы. HTTP определен в RFC 2616. В этом протоколе каждое взаимодействие состоит из одного ASCII-запроса, на который следует один ответ стандарта RFC 822 MIME.
Данный протокол работает на основе TCP-соединения, и хотя формально это требование не является обязательным, на практике оно почти всегда выполняется. Это обусловлено тем, что в случае использования TCP ни браузеру, ни серверу не надо беспокоиться о потерянных данных и разбиении больших сообщений на части. Все это выполнят службы TCP-протокола.
Протокол HTTP разработан таким образом, что может использоваться не только в веб-технологиях но и в других объектно-ориентированных приложениях.
Таблица 6
Встроенные методы HTTP-запросов
| Метод
| Описание
|
| GET
| Прочитать веб-страницу
|
| HEAD
| Прочитать заголовок веб-страницы
|
| PUT
| Сохранить веб-страницу
|
| POST
| Добавить к веб-странице
|
| DELETE
| Удалить веб-страницу
|
| TRACE
| Отослать назад запрос
|
| CONNECT
| Зарезервировано для будущего использования
|
| OPTIONS
| Отобразить параметры
|
Метод GET запрашивает страницу (под страницей может подразумеваться любой объект, хотя на практике чаще всего это просто обычный файл), закодированную согласно стандарту MIME. Это наиболее часто употребляемый метод. Его структура следующая:
GET имя_файла HTTP/1.1
Метод HEAD запрашивает заголовок сообщения, причем сама страница не загружается. С помощью данного метода можно, например, узнать время последнего обновления страницы, что необходимо для управления кэшированием страниц. Кроме того, с помощью этого метода можно просто проверить работоспособность данного URL.
С помощью метода PUT можно поместить страницу на сервер. Тело этого запроса содержит размещаемую страницу, которая может быть закодирована согласно MIME. Метод требует идентификации пользователя.
POST является методом, добавляющим содержимое к уже имеющейся странице. Он может использоваться, например, для добавления записи на форуме.
Метод DELETE уничтожает страницу. Как и в методе PUT здесь требуется аутентификация, подтверждающая права пользователя на данное действие.
TRACE указывает серверу отослать назад запрос и служит для отладки, позволяя узнать, не искажается ли запрос клиента, получаемый сервером.
Метод CONNECT зарезервирован и в настоящее время не используется.
При помощи OPTIONS клиент может запросить сервер о его свойствах или о свойствах какого-либо конкретного файла.
В ответ на каждый запрос сервер генерирует ответ, содержащий строку состояния, а так же, возможно, и другую информацию, например веб-страницу. Строка состояния может содержать код состояния, информирующий об успешном выполнении запроса, а в противном случае – о причине неудач. Коды разделены на пять основных групп (табл. 7).
Таблица 7
Группы кодов состояния
| Группа кода
| Тип
| Коды
|
| 1хх
| Готовность
| 100 – сервер готов обрабатывать запросы клиента
|
| 2хх
| Успех
| 200 – запрос успешно обработан 204 – содержимое отсутствует
|
| 3хх
| Перенаправление
| 301 – страница перемещена 304 – кэшированная страница все еще актуальна
|
| 4хх
| Ошибка клиента
| 403 – ошибка доступа 404 – страница не найдена
|
| 5хх
| Ошибка сервера
| 500 – внутренняя ошибка сервера 503 – указание предпринять попытку позднее
|
За строкой запроса могут следовать другие строки с дополнительной информацией (заголовками запросов), а за ответами – заголовки ответов (табл. 8).
Таблица 8
Некоторые заголовки сообщений HTTP
| Заголовок
| Тип
| Содержимое
|
| User-Agent
| Запрос
| Информация о браузере и платформе
|
| Accept
| Запрос
| Поддерживаемые клиентом типы страниц
|
| Accept-Charset
| Запрос
| Поддерживаемые клиентов наборы символов
|
| Accept-Encoding
| Запрос
| Поддерживаемые клиентом типы кодирования (методы сжатия информации)
|
| Accept-Language
| Запрос
| Естественные языки, воспринимаемые клиентом
|
| Host
| Запрос
| DNS-сервера
|
| Authorization
| Запрос
| Список идентификаторов клиента
|
| Cookie
| Запрос
| Отправка ранее принятого cookie-файла на сервер
|
| Date
| Запрос / ответ
| Дата и время отправки сообщения
|
| Upgrade
| Запрос / ответ
| Поддерживаемые протоколы. Может использоваться для перехода на будущие версии протокола HTTP, которые, возможно, будут несовместимы с предыдущими.
|
| Server
| Ответ
| Информация о сервере
|
| Content-Encoding
| Ответ
| Тип кодирования содержимого (методы сжатия информации)
|
| Content-Language
| Ответ
| Естественный язык, который используется на странице
|
| Content-Length
| Ответ
| Размер страницы в байтах
|
| Content-Type
| Ответ
| MIME-тип страницы
|
| Last-Modified
| Ответ
| Время и дата последнего обновления страницы
|
| Location
| Ответ
| Команда клиенту на перенаправление его запроса другому серверу. Используется при «переезде» страницы или использовании «зеркал», на которых хранится копия страницы
|
| Accept-Ranges
| Ответ
| Готовность сервера принимать запросы на страницы указанного размера. Это позволяет пересылать страницы по частям, что может потребоваться, если страница слишком большая и клиент не может принять сразу всю страницу целиком
|
| Set-Cookie
| Ответ
| Команда клиенту сохранить cookie
|
Воспользуйтесь поиском по сайту: