Middle
Kokias HTTP metodus žinote? Kuo skiriasi PATCH ir PUT? Kas nutiks, jei PUT užklausa bus siunčiama resursui, kurio ID nėra duomenų bazėje? Ar galima perduoti duomenis per GET? Kuo skiriasi POST ir PUT? Kas yra idempotencija?
sobes.tech AI
Atsakymas iš AI
Основные HTTP-методы:
- GET — получить ресурс
- POST — создать ресурс
- PUT — заменить ресурс
- PATCH — частично обновить ресурс
- DELETE — удалить ресурс
- OPTIONS — узнать поддерживаемые методы
Отличия PATCH и PUT:
- PUT заменяет весь ресурс целиком.
- PATCH изменяет только указанные поля, частичное обновление.
Если PUT-запросом обратиться к ресурсу с несуществующим ID:
- Обычно сервер создаст новый ресурс с этим ID (если API это поддерживает), иначе вернёт ошибку.
Можно ли через GET передавать данные?
- Да, через параметры URL (query string), но не рекомендуется для передачи чувствительных или больших данных.
Отличия POST и PUT:
- POST создаёт новый ресурс, не идемпотентен (повторный запрос создаст несколько ресурсов).
- PUT идемпотентен, заменяет ресурс по указанному URI.
Идемпотентность:
- Свойство операции, при котором повторное выполнение даёт тот же результат, что и один раз. Например, PUT и DELETE идемпотентны, POST — нет.