Ответ
Первое - проверяю, действительно ли проблема на стороне сервера. Смотрю в консоли браузера на ошибки сети (5xx, 404), проверяю доступность API через Postman или curl.
Если сервер упал:
- Сообщаю команде (чате/тикете)
- Проверяю мониторинг (если есть доступ)
- Пока сервер лежит - тестирую fallback-логику в коде:
try {
const response = await fetch('/api/data');
if (!response.ok) throw new Error('Server error');
// ...обработка данных
} catch (e) {
showErrorMessage('Сервис временно недоступен');
loadCachedData(); // или показать заглушку
}
Если это прод и критично - помогаю бэкендерам с логами (по договоренности). Для локальной разработки - поднимаю mock-сервер или использую статические JSON.
Ответ 18+ 🔞
Ага, вот и я, сижу, как дурак, и первым делом — проверяю, не накосячил ли сервак. Открываю консоль в браузере и смотрю: нет ли там этих, блядь, ошибок сети — всяких 5xx или 404, которые как гвозди в гроб твоего спокойного дня. Беру Postman или тупой curl и тычусь в API: отвечает или нет. Просто, как три копейки.
Если сервер, сука, реально лег и не дышит:
- Первым делом ору в общий чат или тикет — «ребята, всё, пиздец, сервак накрылся!». Чтобы все в курсе были, а не думали, что это я один такой еблан и что-то сломал.
- Пытаюсь залезть в мониторинг, если, конечно, к нему есть доступ, а не так, что он сам первым делом сдох, ёпта.
- Пока эти, блядь, бэкендеры его откачивают, я не сижу сложа руки. Проверяю, как мой фронт себя ведёт в такой жопе. Вся эта fallback-логика, которая должна сработать.
Смотрю на свой код, типа вот такого:
try {
const response = await fetch('/api/data');
if (!response.ok) throw new Error('Server error');
// ...обработка данных
} catch (e) {
showErrorMessage('Сервис временно недоступен');
loadCachedData(); // или показать заглушку
}
И думаю: «Ну что, дружок-пирожок, покажешь сейчас заглушку пользователю, что всё плохо, или достанешь из кэша старые данные, лишь бы не светить пустотой?». Главное — не зависнуть в ожидании, как лох.
Если это всё на проде и всё горит синим пламенем — помогаю бэкендерам, если попросят. Скидываю логи, что у меня на фронте творилось, может, им легче будет понять, откуда ноги растут. А для локальной разработки, чтобы не зависеть от их косяков, поднимаю себе mock-сервер или просто тырю в код статические JSON-файлы. Ёперный театр, а не работа!