Основи, методи і статуси
Відповідь у два речення — саме стільки інтерв'юер очікує на базове питання. Далі розмова сама піде вглиб.
| Питання | Коротка відповідь |
|---|---|
| Як працює клієнт-серверна архітектура? | Клієнт надсилає HTTP-запит, сервер перевіряє авторизацію, виконує логіку, працює з базою і повертає відповідь зі статусом. HTTP stateless, тому токен іде в кожному запиті. |
| Що таке REST? | Стиль API, де дані — ресурси за URL, а дії задають методами HTTP. Stateless, зазвичай JSON. |
| PUT vs PATCH? | PUT замінює ресурс цілком і ідемпотентний. PATCH змінює окремі поля. |
| Що таке ідемпотентність? | Повторний ідентичний запит не змінює стан понад перший. GET, PUT, DELETE — так; POST — ні, тому в платежах є Idempotency-Key. |
| 401 vs 403? | 401 — не автентифікований. 403 — автентифікований, але без прав. |
| 400 vs 422? | 400 — запит некоректний за формою. 422 — форма ок, але порушене бізнес-правило. |
| Сервер повернув 500 на невалідні дані. Це баг? | Так. Невалідний ввід має давати 4xx з поясненням; 500 означає необроблене виключення. |
На співбесіді: Короткі відповіді — це база, але після них варто дати приклад з проєкту, наприклад як я ловив 500 на невалідному вводі чи перевіряв
Idempotency-Key. Приклад показує досвід краще, ніж визначення.