Добрый день, это канал посвященный небольшим инструкциям, которые я пишу для себя и людей, которые являются начинающими разработчиками.
Итак, сегодня мы поговорим об HTTP ответах, ниже будет приведен список наиболее часто используемых кодов, о которых кто-то мог забыть.
2ХХ (Успех)
200 OK
Успешный ответ, обозначает "хорошо", отправляется в том случае, если все прошло без ошибок.
201 Created
Успешный ответ, обозначает "создано", отправляется тогда, когда вы создали новую сущность на сервере при обработке запроса.
3ХХ (Перенаправление)
301 Moved Permanently
"Постоянно перенесен", этот ответ говорит о том, что ресурс, который запрашивает пользователь был перенесен на новый url адрес, как правило браузер самостоятельно откроет необходимый адрес, без чей-либо помощи.
302 Moved Temporarily
"Временно перенесен", говорит пользователю о том, что ресурс, который он запрашивает был временно перенесен на новый url адрес.
4ХХ (Ошибки клиента)
400 Bad Request
"Плохой, неверный запрос", этот код говорит о том, что клиент отправил невалидный запрос, который сервер не может понять. Как правило причиной этого является неприемлемый синтаксис.
401 Unauthorized
"Не авторизован, не представился", этот код говорит клиенту о том, что данный запрос работает только с авторизированными пользователями.
402 Payment Required
"Необходима оплата", этот код говорит о том, что клиент не может обратиться к контенту или же совершить действие до тех пор, пока не оплатит.
403 Forbidden
"Запрещено, недостаточно прав", этот код используется тогда, кода клиент уже прошел авторизацию, но его прав недостаточно, чтобы совершить действие, например: обычный пользователь пытается удалить учетную запись администратора сайта.
404 Not Found
"Не найдено", этот код сообщает, что данный ресурс/сущность не найдены, то есть сам запрос валидный, но вот по нему ничего не нашлось, также используется для обозначение того, что на сервере нет такого endpoint.
405 Method Not Allowed
"Метод не поддерживается", этот код используется тогда, когда метод известен серверу, но был отключен на сервере, методы GET и HEAD всегда должны быть включены, при ответе с кодом 405 необходимо отправлять заголовок со списком доступных методов.
414 URI Too Long
"URL слишком длинный", этот код говорит о том, что url, который передал клиент длиннее, чем сервер готов интерпретировать.
415 Unsupported Media Type
"Неподдерживаемый тип данных", этот код говорит о том, что сервер отказывается принимать запрос, так как формат данных, которые он получил не поддерживается сервером. Проблема формата может быть связана с указанным запросом Content-Type или Content-Encoding или в результате непосредственного контроля данных.
416 Range Not Satisfiable
"Диапазон недопустим", этот код отправляется сервером в том случае, если клиент отправил запрос на слишком большой диапазон или когда диапазон вообще указан не валидно, например: вместо числа была отправлена строка.
422 Unprocessable Entity
"Неподдерживаемая entity", этот код говорит о том, что сущность, которую отправил пользователь на создание или редактирование не проходит валидацию сервера/БД.
429 Too Many Requests
"Слишком много запросов", этот код отправляется тогда, когда пользователь слишком часто отправляет запросы на сервер или конкретный endpoint и необходимо ему об этом сказать.
5ХХ (Ошибки сервера)
500 Internal Server Error
"Внутренняя ошибка сервера", этот код как правило отправляется в том случае, если причина ошибки не предусматривалась разработчиком, то есть например у вас есть switch, который обрабатывает ошибки и в его default ветки будет лежать ответ 500.
502 Bad Gateway
"Не выполнено", этот код говорит о том, сервер во время работы со шлюзом получил невалидный ответ.
503 Service Unavailable
"Сервис недоступен", этот код отправляется сервером тогда, когда какой-либо из сервисов был перегружен или жже отключен.
Спасибо за прочтение статьи, подписывайтесь и оставляйте комментарии, о чем еще написать.