Какие бывают коды ошибок?
Ошибки и отладка
Коды ошибок бывают на разных уровнях: HTTP-статусы (4xx/5xx), встроенные типы ошибок JavaScript и коды бизнес-логики приложения.
HTTP-коды ошибок
4xx — ошибки клиента
- 400 Bad Request — некорректный запрос.
- 401 Unauthorized — не аутентифицирован.
- 403 Forbidden — нет прав.
- 404 Not Found — не найдено.
- 409 Conflict — конфликт (дубликат).
- 422 Unprocessable Entity — ошибка валидации.
- 429 Too Many Requests — превышен лимит.
5xx — ошибки сервера
- 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout.
Ошибки JavaScript
Встроенные типы:
- TypeError — неверный тип (
null.foo). - ReferenceError — обращение к необъявленной переменной.
- SyntaxError — синтаксическая ошибка.
- RangeError — значение вне диапазона (переполнение стека).
- Error — базовый тип.
try {
null.foo; // TypeError
} catch (e) {
console.log(e.name, e.message);
}Коды бизнес-логики
Приложение может возвращать свои коды в теле ответа:
{ "error": { "code": "USER_ALREADY_EXISTS", "message": "..." } }Коротко для собеседования
Коды ошибок: HTTP-статусы (4xx — клиент: 400, 401, 403, 404, 429; 5xx — сервер: 500, 502, 503), встроенные ошибки JS (TypeError, ReferenceError, SyntaxError, RangeError) и кастомные коды бизнес-логики в теле ответа. Различать 401 (не аутентифицирован) и 403 (нет прав).