300

Multiple Choices

Официальный сайт
Доступно несколько различных ресурсов

Спецификация кода состояния HTTP 300

Код состояния 300 Multiple Choices указывает на то, что целевой ресурс имеет более одного представления, каждое со своим более конкретным идентификатором, и информация об альтернативах предоставляется для того, чтобы пользователь (или агент пользователя) мог выбрать предпочтительное представление, перенаправив свой запрос на один или несколько таких идентификаторов. Другими словами, сервер желает, чтобы агент пользователя участвовал в реактивных переговорах для выбора наиболее подходящего представления (представлений) для своих нужд (раздел 12).

Если у сервера есть предпочтительный выбор, сервер ДОЛЖЕН генерировать поле заголовка Location, содержащее ссылку URI предпочтительного выбора. Агент пользователя МОЖЕТ использовать значение поля Location для автоматического перенаправления.

Для методов запроса, отличных от HEAD, сервер ДОЛЖЕН генерировать содержимое в ответе 300 Multiple Choices, содержащее список метаданных представления и ссылку(и) URI, из которых пользователь или агент пользователя может выбрать наиболее предпочтительную. Агент пользователя МОЖЕТ сделать выбор из этого списка автоматически, если он понимает предоставленный тип носителя. Конкретный формат для автоматического выбора не определен данной спецификацией, поскольку HTTP старается оставаться ортогональным к определению своего содержимого. На практике представление предоставляется в каком-либо легко разбираемом формате, который считается приемлемым для пользовательского агента, что определяется совместной разработкой или согласованием содержания, или в каком-либо общепринятом гипертекстовом формате.

Ответ 300 Multiple Choices является эвристически кэшируемым; т. е. если иное не указано в определении метода или явных элементах управления кэшем (см. раздел 4.2.2 [CACHING]).

Примечание: Первоначальное предложение для кода состояния 300 Multiple Choices определяло поле заголовка URI как предоставляющее список альтернативных представлений, так что оно могло бы использоваться для ответов 200, 300 Multiple Choices и 406 и передаваться в ответах на метод HEAD. Однако отсутствие развертывания и разногласия по поводу синтаксиса привели к тому, что и URI, и Alternates (последующее предложение) были исключены из этой спецификации. Список можно передавать как значение поля заголовка Link [RFC8288], члены которого имеют отношение "альтернатива", хотя развертывание является проблемой курицы и яйца.

Источник / Цитаты из: Код состояния HTTP 300 Multiple Choices определен разделом 15.4.1 из RFC9110.

Протокол HTTP

незавершённая работа

Как вывести код состояния 300 с помощью PHP?

Чтобы бросить на веб-страницу код статуса HTTP 300, можно использовать PHP-функцию http_response_code. Синтаксис выглядит следующим образом: http_response_code(300) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Проверка кода состояния 300 HTTP

Чтобы иметь возможность отображать код состояния HTTP (в данном случае 300 Multiple Choices) и другую информацию на стороне клиента, необходимо открыть консоль разработки с помощью F12. Затем перейдите на вкладку "Сеть". Теперь можно открыть страницу, сайт (пример index.php) должен быть виден на вкладке "Сеть". Его необходимо выбрать, а затем выбрать раздел Herder. После этого пользователь увидит следующий результат:

Код состояния 300 Multiple Choices
Обзор
URL: https://http-statuscode.com/errorCodeExample.php?code=300
Статус: 300 Multiple Choices
Эти: Network
IP-адрес: XX.XX.XX.XX
Код состояния 300 Multiple Choices

Совместимость кода состояния 300 с браузерами

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Константы в языках программирования

HttpStatusCode.MultipleChoices
http.StatusMultipleChoices
Response::HTTP_MULTIPLE_CHOICES
:multiple_choices

Внешние ссылки с дополнительной информацией о коде состояния HTTP 300:

Развлекательные мемы о коде статуса HTTP 300

Автор: Tony Brüser
Автор: Tony Brüser

Тони Брюсер - увлеченный веб-разработчик, склонный к изучению кодов состояния HTTP.

LinkedInGitHub