Sobes.tech
Middle

Quels méthodes HTTP connaissez-vous ? Quelle est la différence entre PATCH et PUT ? Que se passe-t-il si une requête PUT est faite sur une ressource dont l'ID n'existe pas dans la base de données ? Peut-on transmettre des données via GET ? Quelle est la différence entre POST et PUT ? Qu'est-ce que l'idempotence ?

sobes.tech IA

Réponse de l'IA

Основные 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 — нет.