Ошибка 304: о чём говорит и как исправить

3xx: Redirection

Message Description
300 Multiple Choices A link list. The user can select a link and go to that location. Maximum five addresses  .
301 Moved Permanently The requested page has moved to a new url .
302 Found The requested page has moved temporarily to a new url .
303 See Other The requested page can be found under a different url .
304 Not Modified This is the response code to an If-Modified-Since or If-None-Match header, where the URL has not been modified since the specified date.
305 Use Proxy The requested URL must be accessed through the proxy mentioned in the Location header.
306 Unused This code was used in a previous version. It is no longer used, but the code is reserved.
307 Temporary Redirect The requested page has moved temporarily to a new url.

Примеры кодов статусов и ошибок

Ниже приведены несколько вариантов разделов с кодами статусов и ошибок.

Context.io

Коды ошибок и статусы Conext.io

Clearbit не только документирует стандартные коды состояния, но также описывает уникальные параметры, возвращаемые их API. Большинство разработчиков, вероятно, знакомы с кодами 200, 400 и 500, поэтому эти коды не требуют много пояснений. Но если API имеет уникальные коды, описывать их нужно адекватно и подробно.

Коды ошибок и статусы Twitter

В Twitter не только описывается код и состояние, но также предоставляется полезная информация по устранению неполадок, потенциально помогая в устранении ошибок. Например, про ошибку не просто сказано, что статус относится к неработающей службе, но и есть объяснение: «Обычно это временная ошибка, например, в ситуации высокой нагрузки или если у конечной точки временно возникают проблемы. Посетите форумы разработчиков на случай, если у других возникнут аналогичные проблемы, или повторите попытку позже».

Полезные сообщения такого рода — то, к чему должны стремиться технические писатели в разделе кодов состояния (по крайней мере, делать описания тех кодов, которые указывают на проблемы)

Mailchimp

Коды ошибок и статусы Mailchimp

Mailchimp предоставляет удобочитаемые и понятные описания сообщений об ошибке. Например, в ошибке вместо того, чтобы просто написать «Запрещено», Mailchimp объясняет причины, по которым можно получить ошибку запрещенного кода. У Mailchimp существует несколько типов ошибок 403. Запрос может быть запрещен из-за отключенной учетной записи пользователя или запроса, направленного не в тот центр обработки данных. В случае ошибки «WrongDataCenter» Mailchimp отмечает, что «она часто связана с неправильно настроенными библиотеками» и ссылается на дополнительную информацию о центрах обработки данных. Такой тип документации кода ошибки очень полезен для пользователей.

Flickr

Коды ошибок и статусы Flikr

В Flickr раздел «Коды ответов» встроен в описание каждой адресной темы API. Описания ошибок выглядят короткими. Хотя встраивание кодов ответов в каждую тему делает коды ошибок более заметными, в некоторых случаях такой подход менее полезен. Поскольку он встроен в каждую тему API, описания кодов ошибок должны быть краткими, иначе их содержимое будет перегружено информацией о запросе конечной точки.

Напротив, отдельная страница с перечнем кодов ошибок позволяет более подробно раскрывать каждый код, не вытесняя другую документацию. Отдельная страница также уменьшает избыточность и увеличивает объем информации.

Codes

Code Constant Reason Phrase
100 CONTINUE Continue
101 SWITCHING_PROTOCOLS Switching Protocols
102 PROCESSING Processing
200 OK OK
201 CREATED Created
202 ACCEPTED Accepted
203 NON_AUTHORITATIVE_INFORMATION Non Authoritative Information
204 NO_CONTENT No Content
205 RESET_CONTENT Reset Content
206 PARTIAL_CONTENT Partial Content
207 MULTI_STATUS Multi-Status
300 MULTIPLE_CHOICES Multiple Choices
301 MOVED_PERMANENTLY Moved Permanently
302 MOVED_TEMPORARILY Moved Temporarily
303 SEE_OTHER See Other
304 NOT_MODIFIED Not Modified
305 USE_PROXY Use Proxy
307 TEMPORARY_REDIRECT Temporary Redirect
308 PERMANENT_REDIRECT Permanent Redirect
400 BAD_REQUEST Bad Request
401 UNAUTHORIZED Unauthorized
402 PAYMENT_REQUIRED Payment Required
403 FORBIDDEN Forbidden
404 NOT_FOUND Not Found
405 METHOD_NOT_ALLOWED Method Not Allowed
406 NOT_ACCEPTABLE Not Acceptable
407 PROXY_AUTHENTICATION_REQUIRED Proxy Authentication Required
408 REQUEST_TIMEOUT Request Timeout
409 CONFLICT Conflict
410 GONE Gone
411 LENGTH_REQUIRED Length Required
412 PRECONDITION_FAILED Precondition Failed
413 REQUEST_TOO_LONG Request Entity Too Large
414 REQUEST_URI_TOO_LONG Request-URI Too Long
415 UNSUPPORTED_MEDIA_TYPE Unsupported Media Type
416 REQUESTED_RANGE_NOT_SATISFIABLE Requested Range Not Satisfiable
417 EXPECTATION_FAILED Expectation Failed
418 IM_A_TEAPOT I’m a teapot
419 INSUFFICIENT_SPACE_ON_RESOURCE Insufficient Space on Resource
420 METHOD_FAILURE Method Failure
422 UNPROCESSABLE_ENTITY Unprocessable Entity
423 LOCKED Locked
424 FAILED_DEPENDENCY Failed Dependency
428 PRECONDITION_REQUIRED Precondition Required
429 TOO_MANY_REQUESTS Too Many Requests
431 REQUEST_HEADER_FIELDS_TOO_LARGE Request Header Fields Too Large
451 UNAVAILABLE_FOR_LEGAL_REASONS Unavailable For Legal Reasons
500 INTERNAL_SERVER_ERROR Internal Server Error
501 NOT_IMPLEMENTED Not Implemented
502 BAD_GATEWAY Bad Gateway
503 SERVICE_UNAVAILABLE Service Unavailable
504 GATEWAY_TIMEOUT Gateway Timeout
505 HTTP_VERSION_NOT_SUPPORTED HTTP Version Not Supported
507 INSUFFICIENT_STORAGE Insufficient Storage
511 NETWORK_AUTHENTICATION_REQUIRED Network Authentication Required

Основные виды редиректов

Всего существует 10 различных кодов, которые осуществляют перенаправление, но в своей работе в 98% случаев вы будете встречать 301, 302 и 304, о них ниже.

301 Moved Permanently

Запрашиваемый документ перемещён на другой URL-адрес навсегда. Это код ответа сервера, который вызывает больше всего вопросов у начинающих.

На самом деле ответ прост: все страницы, с которых пользователей нужно навсегда переправить на другую страницу (дубли, удалённые страницы, зеркала и всякие штучки), должны отвечать этим кодом.

После краулинга таких страниц поисковые системы рано или поздно «склеят» их с целевой страницей редиректа и передадут вес.

Старайтесь убирать внутри сайта все ссылки на страницы, которые отдают 301 код ответа, и проставьте сразу целевую страницу редиректа.

Google утверждает, что для него все редиректы равнозначны, но ведь есть ещё другие поисковые системы, поэтому ставим всегда 301.

302 Found

Уведомляет клиента, что страница найдена и временно расположена по другому адресу.

Поисковые системы обычно не удаляют её из индекса. Ранее этот код ответа использовался во время доработок на сайте или случаев, когда товара временно нет в наличии, но страница приносит трафик, поэтому есть смысл перенаправить пользователей на страницу каталога или похожего товара.

304 Not Modified

На самом деле, это не совсем редирект, это «уведомление» о том, что страница не изменялась с предыдущего посещения.

Код 304 Google использует и это положительно влияет на краулинговый бюджет. Яндекс такой код не использует.

При обращении, если GoogleBot видит 304 код ответа сервера – он не скачивает страницу.

2xx: Successful¶

Status code Message Description
200 OK Means that the request is OK. It is standard response for successful HTTP requests.
201 Created Means that the request has been fulfilled and a new resource is created.
202 Accepted Means that the request has been accepted for processing, but the processing is going on.
203 Non-Authoritative Information Means that the request has been successfully processed, but it is returning information which may be from another source.
204 No Content Means that the request has been successfully processed, but it is not giving any content.
205 Reset Content Means that the request has been processed, but it is not returning any content and it requires that the requester reset the document view.
206 Partial Content Means that the server commits only a part of the resource, because of a range header, which was sent by the client.

2xx: Successful

Message Description
200 OK The request is OK.
201 Created The request is complete, and a new resource is created .
202 Accepted The request is accepted for processing, but the processing is not complete.
203 Non-authoritative Information The information in the entity header is from a local or third-party copy, not from the original server.
204 No Content A status code and a header are given in the response, but there is no entity-body in the reply.
205 Reset Content The browser should clear the form used for this transaction for additional input.
206 Partial Content The server is returning partial data of the size requested. Used in response to a request specifying a Range header. The server must specify the range included in the response with the Content-Range header.

Ошибка 503

Service Temporarily Unavailable

У каждого аккаунта на сервере хостинга есть определенное количество рабочих процессов, выделенное в соответствии с выбранным тарифным планом. Работа с запросами ведется в порядке очереди, они поступают на сервер, где легкие запросы обрабатываются мгновенно, а тяжелые – медленно. Всякая очередь ограничена тем или иным количеством запросов. Если новый запрос находится за пределами этой границы, принят он не будет, и вместо результата браузер выдаст оповещение “Сервис временно недоступен”.

Чтобы исправить данную ошибку нужно знать причины, по которым она может появляться:

1. Зависание скриптов при передаче больших статичных файлов через PHP. Скрипты работают определенное время, а не постоянно. При окончании времени работы скрипта прерывается передача файла, соответственно, файл не будет передан полностью, а также запрос оставит процесс веб-сервера работать еще длительное время. Устранить ошибку вы сможете посредством следующих шагов:

  • Проверить все компоненты и плагины вашей CMS, отключая их по очереди, и найдите самые тяжёлые или испорченные, при работе которых загрузка сайта замедляется. По возможности откажитесь от таких компонентов или поищите более быстрый аналог.
  • Проверить наличие у вас медленных запросов — в папке logs вашего аккаунта создается файл mysql-slow.log. Информация в этом файле обновляется раз в сутки и содержит только самые проблемные SQL-запросы.
  • Если в PHP-скриптах используются Include-функции, загружающие части движка, расположенные на одном аккаунте, убедитесь, что в них используется локальный путь, а не URL вида «http://…». Наличие URL заставляет сервер делать дополнительный HTTP-запрос — это занимает лишнее время и сильно замедляет загрузку сайта.

2. Большое количество запросов к серверу. Причин возникновения таких запросов несколько:

  • Загружаемый ресурс разбит/содержит ссылки на слишком больше число файлов (картинки, таблицы стилей JS-скрипты), которые подгружаются через отдельные запросы. В этом случае следует объединить ресурсы в один файл, где это возможно.
  • DDoS-атаки, флуды, спамы в комментарии также могут вызывать большое количество запросов. В случае DDoS-атаки необходимо определить ее тип, и, согласно ее уровню, предпринять действия по устранению. Подробнее про DDoS-атаки вы можете прочитать в статье «DDoS-атаки: взгляд со стороны Timeweb».

Исправляем ошибку 400 Bad Request на стороне клиента

Так как ошибка 400 в 99 случаев из 100 возникает на стороне клиента, начнем с соответствующих методов. Проверим все элементы, участвующие в передаче запроса со стороны клиента (браузера).

Проверяем адрес сайта

Банальщина, но необходимая банальщина. Перед тем как бежать куда-то жаловаться и предпринимать более серьезные шаги, повнимательнее взгляните на ссылку в адресной строке. Может, где-то затесалась опечатка или вы случайно написали большую букву вместо маленькой. Некоторые части адреса чувствительны к регистру. 

А еще стоит поискать запрашиваемую страницу через поисковик, встроенный в сайт. Есть вероятность, что конкретная страница куда-то переехала, но сервер не может показать подходящий HTTP-код в духе 404 Not Found. Если, конечно, сам сайт работает. 

Сбрасываем параметры браузера

Этот метод срабатывает, если сервер отказывается принимать запросы из-за «битых» куки или других данных. Дело в том, что сайт использует куки-файлы, чтобы хранить информацию о пользователе у него же в браузере. При входе конкретного человека на ресурс, он пытается распознать куки и сравнить информацию с той, что уже есть на сервере.

Иногда случается, что куки-файлы одного или нескольких пользователей вступают в конфликт. В таком случае надо открыть настройки браузера, а потом удалить весь кэш, куки и прочие связанные элементы. 

В зависимости от браузера процесс удаления куки-файлов может немного отличаться. В Chrome это работает так:

  • Открываем настройки браузера. 
  • Переходим в раздел «Конфиденциальность и безопасность».
  • Выбираем «Файлы cookie и другие данные».
  • Нажимаем на кнопку «Удалить все».

Для чистки cookies можно использовать стороннюю программу в духе CCleaner или CleanMyPC.

Загружаем файл подходящего размера

Если ошибка 400 Bad Request появляется при попытке загрузить на сайт какой-нибудь файл, то стоит попробовать загрузить файл поменьше. Иногда вебмастера ленятся грамотно настроить ресурс, и вместо понятного объяснения вроде «Загружаемые файлы не должны быть размером больше 2 мегабайт» люди получают Bad Request. Остается только гадать, какой там у них лимит. 

Устраняем проблемы, связанные с Windows и сторонним софтом

Помимо браузера, на работу сети могут влиять другие программные продукты (экраны, защищающие от «непонятных подключений»). И вирусы. Да и сама Windows может стать проблемой. Почти любой ее компонент. Поэтому надо бы проделать следующее:

  • Повторно установить NET.Framework. Желательно перед этим удалить предыдущую версию.
  • Установить какой-нибудь приличный антивирус (а лучше два) и запустить глубокую проверку систему. Возможно, подключению и входу на ресурс мешает вредоносная программа.
  • Если у вас уже установлен антивирус, то, наоборот, попробуйте его отключить. Иногда встроенные в них экраны проверки подключений блокируют работу браузера целиком или отдельных страниц. Лучше выдать браузеру больше прав на выполнение своих задач или установить антивирус, который более лояльно относится к установленному на компьютере софту.
  • Еще надо поменять параметры брандмауэра. Его можно разыскать в панели управления Windows. Там надо добавить в список исключений ваш браузер. Тогда брандмауэр не будет мешать подключению к запрашиваемому сайту.
  • Почистить Windows от программного мусора. Можно пройтись приложением CCleaner. 
  • Обновить драйверы для сетевых устройств. 
  • Обновить Windows или просканировать систему на наличие погрешностей в системных компонентах.

Список кодов статуса HTTP

Существует более 40 различных кодов статуса сервера. Но тех, с которыми вы будете сталкиваться регулярно меньше дюжины. Ниже приводится список кодов статуса HTTP:

Код статуса 200 (код страницы 200)

200: «Все в порядке». Это код, который возвращается, когда веб-страница или ресурс действуют точно так, как ожидается.

Коды статуса 300

301: «Запрошенный ресурс был перемещен навсегда». Этот код возвращается, когда веб-страница или ресурс заменяется другим ресурсом. Он используется для постоянного редиректа URL-адресов.

302: это http-ошибка «Запрошенный ресурс перемещен, но был найден». Этот код используется для указания того, что запрошенный ресурс был найден, но не в том месте, где это ожидалось. Он используется для временного редиректа URL-адресов.

304: «Запрошенный ресурс не был изменен с момента последнего обращения к нему». Сообщает, что ресурсы, хранящиеся в кэше браузера, не изменились. Он используется для ускорения доставки веб-страниц за счет повторного использования ранее загруженных ресурсов.

Коды статуса 400

401: «Не авторизован». Возвращается сервером, когда для доступа к целевому ресурсу отсутствуют валидные учетные данные.

http-ошибка 403: «Доступ к этому ресурсу запрещен». Возвращается, когда пользователь пытается открыть ресурс, для которого у него нет прав доступа. Например, попытка просмотра неавторизованным пользователем контента, защищенного паролем, может привести к ошибке 403.

404: «Запрошенный ресурс не найден». Наиболее распространенное сообщение об ошибке. Означает, что запрошенный ресурс не существует и сервер не знает, существовал ли он когда-либо.

405: «Метод не разрешен». Генерируется, когда хостинг-сервер (исходный сервер) поддерживает полученный метод, но целевой ресурс отсутствует.

406: «Неприемлемый ответ». Запрошенный ресурс способен генерировать только контент, неприемлемый в соответствии с заголовками Accept, отправленными в запросе.

408: «Время ожидания сервером поступления остальной части запроса из браузера истекло». Генерируется, когда сервер прерывает обработку после истечения времени ожидания полного запроса от браузера. Другими словами, сервер не получил полный запрос, отправленный браузером. Одной из возможных причин может быть перегрузка сети, приводящая к потере пакетов между браузером и сервером.

410: «Запрошенный ресурс отсутствует и не будет возвращен». Подобен коду 404 «Не найден», за исключением того, что код статуса 410, указывает, что данный статус ожидается на постоянной основе.

429: это http-ошибка «Слишком много запросов». Генерируется сервером, когда пользователь отправил слишком много запросов в заданный промежуток времени (ограничение по скорости). Иногда причиной ошибки могут быть боты, пытающиеся получить доступ к сайту. В этом случае может потребоваться изменение URL-адреса входа в панель администрирования WordPress.

429 слишком много запросов (http error 429)

499: «Клиент закрыл запрос». Возвращается NGINX, когда клиент закрывает запрос, пока NGINX все еще обрабатывает его.

Коды статуса 500

500: «На сервере возникла ошибка, и запрос не мог быть завершен». Общий http-код, который также называют «внутренняя ошибка сервера». На сервере что-то пошло не так и запрошенный ресурс не был доставлен. Этот код генерируется сторонними плагинами, при сбоях PHP-кода или подключения к базе данных.

Ошибка при установлении соединения с базой данных

501: «Не реализовано». Эта ошибка указывает на то, что сервер не поддерживает функции, необходимые для выполнения запроса. Ошибка почти всегда связана с самим сервером, и для ее решения нужно обратиться в службу поддержки хостинг-провайдера.

502: это http-ошибка «Некорректный шлюз». Означает, что один сервер получил неверный ответ от другого. Иногда запрос занимает слишком много времени, и поэтому отменяется или удаляется сервером, а соединение с базой данных прерывается.

503: это http-ошибка «В данный момент сервер не может обработать запрос». Запрос не может быть обработан прямо сейчас. Этот код возвращается перегруженным сервером, который не может обрабатывать новые запросы.

504: «Сервер, действующий как шлюз, не смог дождаться ответа от другого сервера». Возвращается, когда в обработке запроса было задействовано два сервера, и на первом сервере истекло время ожидания ответа от второго.

Откуда они? Куда они идут?

Каждый раз, когда вы нажимаете на ссылку или вводите URL и нажимаете «Enter», ваш браузер отправляет запрос на веб-сервер. Веб-сервер получает и обрабатывает запрос, а затем отправляет запрошенные ресурсы вместе с заголовком HTTP.

Коды состояния HTTP доставляются вашему браузеру в заголовке HTTP. Хотя коды состояния возвращаются каждый раз, когда ваш браузер запрашивает веб-страницу или ресурс, большую часть времени вы их не видите. Когда что-то идет не так, вы можете увидеть код состояния HTTP, отображаемый в вашем браузере. Это способ сервера сказать: «Что-то не так. Вот код, который объясняет, что пошло не так ».

Если вы хотите увидеть коды состояния, которые ваш браузер обычно не показывает, есть много разных инструментов, которые облегчают это. Расширения браузера доступны для дружественных к разработчикам браузеров, таких как Chrome и Firefox , и есть много веб-инструментов для извлечения заголовков, таких как Web Sniffer .

Чтобы увидеть код состояния HTTP с помощью одного из этих инструментов, найдите строку в верхней части отчета с надписью «Status: HTTP / 1.1», за которой следует код состояния, возвращаемый сервером.

На стороне сервера или на стороне клиента?

Все коды ответа HTTP из категории 4xx считаются ошибками на стороне клиента. Несмотря на это, появление ошибки 4xx не обязательно означает, что проблема как-то связана с клиентом, под которым понимается веб-браузер или устройство, используемое для доступа к приложению. Зачастую, если вы пытаетесь диагностировать проблему со своим приложением, можно сразу игнорировать большую часть клиентского кода и компонентов, таких как HTML, каскадные таблицы стилей (CSS), клиентский код JavaScript и т.п. Это также применимо не только к сайтам. Многие приложения для смартфонов, которые имеют современный пользовательский интерфейс, представляют собой веб-приложения.

С другой стороны, ошибка 400 Bad Request означает, что запрос, присланный клиентом, был неверным по той или иной причине. Пользовательский клиент может попытаться загрузить слишком большой файл, запрос может быть неверно сформирован, заголовки HTTP запроса могут быть неверными и так далее.

Мы рассмотрим некоторые из этих сценариев (и потенциальные решения) ниже. Но имейте в виду: мы не можем однозначно исключить ни клиент, ни сервер в качестве источника проблемы. В этих случаях сервер является сетевым объектом, генерирующим ошибку 400 Bad Request и возвращающим её как код ответа HTTP клиенту, но возможно именно клиент ответственен за возникновение проблемы.

10.2 2xx — Успешные коды.

Этот класс кодов состояния указывает, что запрос клиента был
успешно получен, понят, и принят.

10.2.1 200 OK.

Запрос был удачно выполнен. Информация, возвращаемая с ответом
зависит от метода, используемого в запросе. Например:

GET
в ответе представлен объект, соответствующий запрошенному
ресурсу;
HEAD
в ответе представлены поля заголовка объекта
(entity-header), соответствующие запрошенному ресурсу. Тело
сообщения (message-body) отсутствует;
POST
в ответе представлено описание объекта или содержится
результат действия;
TRACE
в ответе представлен объект, содержащий сообщение запроса,
полученого конечным сервером.

10.2.2 201 Создан, Created.

Запрос был выполнен и в результате был создан новый ресурс. Новый
созданный ресурс может быть вызван по URI (одному или нескольким),
возвращенным в объекте ответа; наиболее специфический URL для
ресурса отдается в поле заголовка Location. Первоначальный сервер
ДОЛЖЕН создать ресурс перед возвратом кода состояния 201. Если
действие не может быть выполнено немедленно, сервер должен
возвратить ответ с кодом состояния 202 (Принято, Accepted) вместо
201.

10.2.3 202 Принято, Accepted.

Запрос был принят для обработки, но обработка не была завершена.
В конечном счете запрос МОЖЕТ быть, а МОЖЕТ и не быть выполнен,
поскольку он МОЖЕТ быть отвергнут при фактической обработке.
Не имеется никакой возможности вторичной посылки кода состояния от
асинхронной операции типа этой.

Ответ с кодом состояния 202 преднамеренно уклончив. Цель его
состоит в том, чтобы позволить серверу принять запрос для
некоторого другого процесса (возможно пакетно-ориентированного
процесса, который выполняется только один раз в день) и не
требовать при этом, чтобы соединение агента пользователя с
сервером сохранялось до завершения процесса. Объекту,
возвращенному с этим ответом СЛЕДУЕТ содержать индикатор текущего
состояния запроса и либо ссылку на монитор состояния, либо
некоторую оценку времени, когда пользователь может ожидать
завершения выполнения запроса.

10.2.4 203 Не авторская информация, Non-Authoritative Information.

Возвращенная в заголовке объекта (entity-header) метаинформация —
это не оригинал, доступный на первоначальном сервере, а документ,
собранный из локальных копий или копий третьей стороны.
Представленный документ МОЖЕТ быть как подмножеством оригинальной
версии, так и содержать сведения, которые в ней не были
представлены. Например, включение локальной аннотирующей
информацию о ресурсе МОЖЕТ расширить метаинформацию, известную
первоначальному серверу. Использование этого кода состояния в
ответе не является необходимым, но может применяться тогда, когда
код состояния ответа отличен от 200 (OK).

10.2.5 204 Нет содержимого, No Content.

Сервер выполнил запрос, но нет никакой новой информации, которую
можно послать обратно. Если клиент — агент пользователя, ему НЕ
СЛЕДУЕТ изменять вид документа, который послужил причиной запроса.
Этот ответ предназначен прежде всего для того, чтобы позволить
вводить данные для действий, не изменяя вид активного документа
агента пользователя. Ответ МОЖЕТ включать новую метаинформацию в
форме заголовков объекта (entity-headers), которые СЛЕДУЕТ
добавить к документу, показываемому в настоящее время агентом
пользователя.

Ответ с кодом состояния 204 НЕ ДОЛЖЕН содержать тела сообщения, и,
таким образом, всегда завершается первой пустой строкой после
полей заголовка.

10.2.6 205 Сбросить содержимое, Reset Content.

Сервер выполнил запрос, и агенту пользователя СЛЕДУЕТ отменить
просмотр документа
, который инициировал запрос. Этот ответ
предназначен прежде всего для того, чтобы позволить ввод данных,
осуществляемый пользователем, с последующей очисткой формы, в
которой сделан ввод, так, чтобы пользователь мог легко
инициировать следующее действие ввода. Ответ НЕ ДОЛЖЕН содержать
объект.

10.2.7 206 Частичное содержимое, Partial Content.

Сервер выполнил частичный GET запрос ресурса. Запрос должен
содержать поле заголовка Range (), указывающее
желаемый диапазон. Ответ ДОЛЖЕН содержать либо поле заголовка
Content-Range (), указывающее диапазон, включенный в
ответ, либо тип содержимого (Content-Type) должен быть равным
«multipart/byteranges», а поля Content-Range должны содержаться в
каждой части. Если «multipart/byteranges» не используется, поле
заголовка Content-Length в ответе ДОЛЖНО соответствовать
фактическому числу октетов (OCTETs), переданных в теле сообщения
(message-body).

Кэш, который не поддерживает заголовки Range и Content-Range НЕ
ДОЛЖЕН кэшировать ответы с кодом состояния 206.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector