HTTP-сообщения состоят из простого ASCII-текста. Сообщение включает заголовок и часть с основным текстом данных. Заголовок сообщения — это единица поведения, и каждая строка заканчивается CRLF (возврат каретки и разрыв строки). http-запрос:
Примеры следующие:
GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate
имя пользователя=jinqiao&password=1234 RequestMethod: OPTIONS,, POST, PUT, DELETE, TRACE и CONNECT.
Запрос GET для получения ресурса, идентифицированного Request-URI POST добавляет новые данные после ресурса, идентифицированного Request-URI Запрос HEAD, чтобы получить заголовок ответного сообщения ресурса, идентифицированного Request-URI Сервер запросов PUT хранит ресурс и использует Request-URI в качестве идентификатора DELETE Сервер запросов удаляет ресурс, идентифицированный request-URI Сервер запросов TRACE возвращает полученную информацию о запросе, которая в основном используется для тестирования или диагностики CONNECT зарезервирован для будущего использования OPTIONS запрашивает о производительности сервера или к параметрам и требованиям, связанным с ресурсом
User-Agent: информация клиента в браузере. Connection:close указывает на использование короткого соединения, а Keep-Alive — что клиент поддерживает постоянные соединения. Дата: Текущее время генерации сообщения. Accept-Language: язык, поддерживаемый клиентом. Cache-Control: поддерживает ли клиент кэш. no-cache означает, что клиент не поддерживает кэш, например, max-age=3600, сообщает пользовательскому агенту, как долго результат ответа на запрос действителен, и в течение срока действия, когда пользователю снова нужен доступ, он может быть извлечён напрямую из клиента локально без необходимости доступа к серверу. Реферер: Реферер сообщает серверу, с какого URL поступает запрос, который можно использовать для отслеживания пути доступа пользователя к вебу.
If-Modified-Since: 如果请求消息包含If-Modified-Since标题 域,GET方法的语法就变成“条件GET”,即“(conditional GET)”。 条件GET方法可以对指定资源进行判断,如果它在If-Modified-Since标题域中的指定日期后发生了更新,才启动传输,否则不传输。这种条件 GET允许被缓存的实体在不必经过多次请求或不必要的数据传输就能进行刷新,从而有助于降低网络负载。
Last-Modified: Sun, 03 Dec 2008 23:52:56 GMT
ETag: “1cbf3-dfd-3a2adcd8″ Обычно он используется при загрузке файлов для определения времени последней модификации ответного контента или для проверки контента, и когда следующий пользовательский агент нуждается в этом, сервис сначала определяет, совпадают ли эти два значения с теми, что на сервере, и не обязательно ли возвращать содержимое одно и то же. Истечёт: Когда истекает результат ответа на запрос, и до его окончания агент может вернуть предыдущий ответ напрямую из кэша. Host: Указывает хост и номер порта запрашивающего ресурса. Запросы HTTP/1.1 должны указывать Host, иначе сервер возвращает статус 400.
Ответ на http: Примеры следующие: HTTP/1.1 200 OK
Date: Mon, 04 May 2015 04:47:13 GMT
Server: Apache
Cache-Control: max-age=0
Expires: Mon, 04 May 2015 04:47:13 GMT
Vary: Accept-Encoding,User-Agent
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html;charset=utf-8
X-Pad: avoid browser bug
Строка статуса включает: номер версии протокола HTTP, статус и текстовое описание статусного кода. Например: HTTP/1.1 200 OK Код состояния состоит из трёхзначного номера, а код статуса имеет примерно 5 значений: 1. 1xx。 Информация, запрос получен, продолжайте обработку. 2. 2xx。 Успех. 200 запросов выполнены успешно; 206 Breakpoint продолжался. 3. 3xx。 Перенаправление. Обычно переключайтесь на новый адрес. 4. 4xx。 Ошибка клиента. Файлы 404 отсутствуют 5. 5xx。 Ошибка сервера. 500 внутренних ошибок.
Set-Cookie: сервер устанавливает cookie на стороне клиента. Формат настройки — name=value, и при установке нескольких параметров середина отделяется точкой с запятой. Set-Cookie также использует несколько параметров: PATH устанавливает допустимый путь, DOMAIN — доменное имя, в котором куки вступает в силу, Expire — время действия cookie, а 0 означает, что срок действия истекает при закрытии браузера. locatio{filter}n: Этот параметр реализует перенаправление, когда сервер возвращает 3xx перенаправление. Этот протокол используется для прыжка рекламных ссылок. Длина содержания: Длина придатка (сущности данных). |