Jump to content

HTTP-расположение

Поле HTTP Location заголовка возвращается в ответах от HTTP- сервера в двух случаях:

  1. Чтобы попросить веб-браузер загрузить другую веб-страницу ( перенаправление URL-адреса ). В этом случае заголовок Location должен быть отправлен с кодом состояния HTTP 3xx. Он передается как часть ответа веб-сервера, когда запрошенный URI имеет:
    • Временно переехал;
    • Переехал навсегда; или
    • Обработал запрос, например форму POST, и предоставляет результат этого запроса по другому URI.
  2. Для предоставления информации о местоположении вновь создаваемого ресурса. В этом случае заголовок Location должен быть отправлен с кодом состояния HTTP 201 или 202 . [1]

Устаревшая версия спецификаций HTTP 1.1 (IETF RFC 2616) требовала для перенаправления полный абсолютный URI. [2] Рабочая группа IETF HTTP обнаружила, что самые популярные веб-браузеры допускают передачу относительного URL-адреса. [3] и, следовательно, обновленные спецификации HTTP 1.1 (IETF RFC 7231) ослабили исходное ограничение, позволив использовать относительные URL-адреса в заголовках Location. [4]

Пример абсолютного URL

[ редактировать ]

Абсолютные URL-адреса – это URL-адреса, начинающиеся со схемы. [5] (например, http:, https:, telnet:, mailto:) [6] и соответствовать синтаксису и семантике конкретной схемы. Например, синтаксис и семантика HTTP-URL-адресов, специфичная для схемы HTTP, требуют «хост» (адрес веб-сервера) и «абсолютный путь» с дополнительными компонентами «порт» и «запрос».

Клиент с просьбой
https://www.example.com/index.html
с использованием

GET /index.html HTTP/1.1
Host: www.example.com

может получить ответ сервера

HTTP/1.1 302 Found
Location: https://www.example.org/index.php

Пример абсолютного пути относительного URL-адреса

[ редактировать ]

Относительные URL-адреса — это URL-адреса, которые не включают схему или хост. Чтобы их можно было понять, их необходимо объединить с URL-адресом исходного запроса.

Запрос клиента на
https://www.example.com/blog/all :
может получить ответ сервера с абсолютным путем, поскольку он начинается с косой черты: [7]

HTTP/1.1 302 Found
Location: /articles/

URL-адрес местоположения расширяется клиентом до
https://www.example.com/articles/ . [8]

Пример относительного пути относительного URL-адреса

[ редактировать ]

[9]

Запрос клиента на
https://www.example.com/blog/latest
может получить ответ сервера с относительным путем, поскольку он не начинается с косой черты: [7]

HTTP/1.1 302 Found
Location: 2020/zoo

Клиент удаляет сегмент пути после последней косой черты исходного URL-адреса и добавляет относительный путь, в результате чего
https://www.example.com/blog/2020/zoo . [10] [8]

См. также

[ редактировать ]
  1. ^ Ричардсон, Леонард (2007). RESTful веб-службы . Севастополь: О'Рейли. стр. 228–230 . ISBN  978-0-596-52926-0 .
  2. ^ "Расположение" . Протокол передачи гипертекста — HTTP/1.1 . IETF . Июнь 1999 г. с. 14.30. дои : 10.17487/RFC2616 . РФК 2616 .
  3. ^ Билет 185 рабочей группы IETF HTTPbis
  4. ^ "Расположение" . Протокол передачи гипертекста (HTTP/1.1): семантика и содержание . IETF . Июнь 2014. сек. 7.1.2. дои : 10.17487/RFC7231 . РФК 7231 .
  5. ^ Единый идентификатор ресурса (URI): общий синтаксис . IETF . Январь 2005 г. doi : 10.17487/RFC3986 . РФК 3986 .
  6. ^ «Схемы единого идентификатора ресурса (URI) IANA» . Проверено 21 ноября 2014 г.
  7. ^ Jump up to: а б «Относительная ссылка» . Единый идентификатор ресурса (URI): общий синтаксис . IETF . Январь 2005 г. сек. 4.2. дои : 10.17487/RFC3986 . РФК 3986 . Проверено 22 ноября 2020 г.
  8. ^ Jump up to: а б «Нормальные примеры» . Единый идентификатор ресурса (URI): общий синтаксис . IETF . Январь 2005 г. сек. 5.4.1. дои : 10.17487/RFC3986 . РФК 3986 . Проверено 22 ноября 2020 г.
  9. ^ Ури, Авива . Оксфордское искусство онлайн. Издательство Оксфордского университета. 2003. doi : 10.1093/gao/9781884446054.article.t087366 .
  10. ^ «Объединить пути» . Единый идентификатор ресурса (URI): общий синтаксис . IETF . Январь 2005 г. сек. 5.2.3. дои : 10.17487/RFC3986 . РФК 3986 . Проверено 22 ноября 2020 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4ccf8b8ffe7fc50ce8af898f89ceb56b__1697025780
URL1:https://arc.ask3.ru/arc/aa/4c/6b/4ccf8b8ffe7fc50ce8af898f89ceb56b.html
Заголовок, (Title) документа по адресу, URL1:
HTTP location - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)