Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
203
Добавлен:
17.04.2018
Размер:
277.5 Кб
Скачать

ИП. СП. HTTP. Методы протокола

МИЭТ, 2017

 

Запрос:

 

 

GET http://www.miet.ru HTTP/1.0<cr><lf>

 

GET

запрос содержимого ресурса (возможно, с параметрами)

HEAD

получение заголовков (тело - отсутствует)

 

POST

передает серверу данные (параметры в теле)

 

PUT

загружает ресурс на сервер

 

DELETE

удаляет ресурс

 

TRACE

Возвращает полученный запрос так, что клиент может увидеть,

 

какую информацию промежуточные серверы добавляют или

 

изменяют в запрос

 

CONNECT

Преобразует соединение запроса в прозрачный TCP/IP-туннель,

 

обычно чтобы содействовать установлению защищённого SSL-

 

соединения через нешифрованный прокси

 

OPTIONS

Используется для определения возможностей веб-сервера или

 

параметров соединения для конкретного ресурса. В ответ

серверу следует включить заголовок Allow со списком поддерживаемых методов. Также в заголовке ответа может включаться информация о поддерживаемых расширениях

ИП. СП. HTTP. Классы кодов ответа

МИЭТ, 2017

Ответ:

HTTP/1.0 xxx X-x<cr><lf>

1xx — Informational (информирование о процессе передачи) 2xx — Success (успешность)

3xx — Redirectional (перенаправление)

4xx — Client error (ошибка запроса клиента) 5xx — Server error (ошибка сервера)

ИП. СП. HTTP. Коды ответа сервера. Процесс обработки

МИЭТ, 2017

Ответ:

HTTP/1.0 1xx X-x<cr><lf>

Информационные коды ответа:

100 Continue

— продолжай

101

Switching protocols

— переключение протоколов

102

Processing

— идет обработка

ИП. СП. HTTP. Коды ответа сервера. Успешность обработки

МИЭТ, 2017

Ответ: HTTP/1.0 2xx X-x<cr><lf>

200 OK — успешно (хорошо)

201 Created — создан новый ресурс по новому адресу (см. в Location)

202 Accepted — принято в работу, но она не завершена (и можно не ждать) 203 Non-Authoritative Information — информация взята из резервной копии 204 No content — нет содержимого (тела ответа)

205 Reset Content — перепошлите запрос

206 Partial Content — частичное содержимое в ответ на частичный GET-запрос*

207 Multi-Status — сервер передаёт результаты выполнения сразу нескольких независимых операций. Они помещаются в само тело сообщения в виде XML- документа с объектом multistatus

* частичный GET-запрос идет с указанием байтового диапазона в заголовке c именем Range после которого указывается кусок байтов какой длины нужно получить с сервера

ИП. СП. HTTP. Коды ответов сервера. Перенаправление

МИЭТ, 2017

Ответ: HTTP/1.0 3хx X-x<cr><lf>

300 Multiple Choices — по указанному URI существует несколько вариантов предоставления ресурса по типу MIME, по языку

301 Moved Permanently — запрошенный документ был окончательно перенесен на новый URI, указанный в поле Location заголовка

302 Found | Moved Temporarily — запрошенный документ временно доступен по другому URI, указанному в заголовке в поле Location

303 See Other — документ по запрошенному URI нужно запросить по адресу в поле Location заголовка с использованием метода GET несмотря даже на то, что первый запрашивался иным методом.

304 Not Modified — сервер возвращает такой код, если клиент запросил документ методом GET, использовал заголовок If-Modified-Since или If-None-Match и документ не изменился с указанного момента.

305 Use Proxy — запрос к запрашиваемому ресурсу должен осуществляться через прокси-сервер, URI которого указан в поле Location заголовка.

306 — не используется

307 Temporary Redirect — запрашиваемый ресурс на короткое время доступен по другому URI, указанный в поле Location заголовка.

ИП. СП. HTTP. Коды ответов сервера. Ошибки клиента

МИЭТ, 2017

Ответ: HTTP/1.0 4xx X-x<cr><lf>

400 Bad Request — синтаксическая ошибка в запросе клиента

401 Unauthorized — для доступа к ресурсу требуется авторизация. В заголовке ответа должно быть поле WWW-Authenticate с перечнем условий аутентификации. Можно запрос, включив в заголовок поле Authorization с требуемыми данными

402 Payment Required — доступ к ресурсу – платный. Пока не используется (резерв)

403 Forbidden — доступ – запрещен.

404 Not Found — запрашиваемый ресурс не найден.

405 Method Not Allowed — метод не позволен (например, DELETE)

415 Unsupported Media Type — сервер отказывается работать с указанным типом данных при данном методе

429 Too Many Requests — клиент попытался отправить слишком много запросов за короткое время, что может указывать, например, на попытку DdoS-атаки

451 Unavailable For Legal Reasons — доступ закрыт по юридическим причинам

ИП. СП. HTTP. Коды ответов сервера. Ошибки сервера

МИЭТ, 2017

Ответ: HTTP/1.0 5хx X-x<cr><lf>

500 Internal Server Error — любая из не классифицированных ниже ошибок

501 Not Implemented — нет возможностей для обработки запроса

502 Bad Gateway — сервер, выступая в роли шлюза или прокси-сервера, получил недействительное ответное сообщение от вышестоящего сервера

503 Service Unavailable — сервер временно не имеет возможности обрабатывать запросы по техническим причинам (в поле Retry-After может быть записано ожидаемое время включения)

504 Gateway Timeout — сервер в роли шлюза или прокси-сервера не дождался ответа от вышестоящего сервера для завершения текущего запроса

505 HTTP Version Not Supported — сервер не поддерживает указанную версию протокола HTTP

ИП. СП. URI

МИЭТ, 2017

URI — Universal Resource Identifier. Универсальный идентификатор ресурса

Структура URI:

<схема>:<идентификатор-в-зависимости-от-схемы>

Схемы:

http: ldap: tel:

ftp: mailto: telnet:

file: news: jar:

ИП. СП. URL

МИЭТ, 2017

URL — Uniform Resource Locator Обобщенный адрес ресура

Структура URL: <схема>://<логин>:<пароль>@<хост>:<порт>/<URL-путь>

Пример:

ftp://guest:12345@ftp.swamp.ru:21/pub/

ИП. СП. Недостатки URL и URI

МИЭТ, 2017

Главный недостаток — отсутствие поддержки Unicode

Кодирование не ASCII символов в URI/URL:

Преобразовать не ASCII символы в UTF-8

Заменить полученные байты в последовательноть %<hex-код>

Пример:

http://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB %D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_ %D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0

ИП. СП. FTP

МИЭТ, 2017

Протокол FTP (File Transfer Protocol) — протокол прикладного уровня для обмена

файлами, построенный по технологии

клиент-сервер.

1971 — RFC959: текстовый(управление)+байтовый(передача данных)

1998 — поддержка IPV6

Соседние файлы в папке Интернет технологии