Зачем использовать REST API, если все можно сделать с помощью `POST`?

Зачем использовать REST API, если все можно сделать с помощью `POST`?

Я читал о документации по REST api. С точки зрения новичка, я не понимаю, зачем использовать REST, если можно сделать все с помощью метода post?

Например, если я запрашиваю у бэкэнда удаление одной записи, я могу просто вызвать ее delete_oneкак URL-адрес в POSTзапросе. Зачем разрабатывать громоздкий DELETEзапрос?

решение1

Одной из целей ограничений REST является извлечение выгоды из многоуровневых кэшей. Следование архитектурному стилю REST дает вам общий язык для описания операций и отношений между различными операциями таким образом, чтобы они были понятны не только конечным точкам (клиенту и серверу), но и промежуточным компонентам, таким как кэши и промежуточное ПО. Эти кэши и промежуточное ПО могут быть общими, готовыми компонентами, которые не были созданы или настроены специально для вашего приложения, а понимают только базовую семантику HTTP (или любой другой разновидности REST, которую вы используете).

В вашем конкретном примере при использовании метода HTTP DELETE вы также указываете, что кэши на этом URL-адресе должны быть аннулированы:

Если запрос DELETE проходит через кэш, в котором имеется один или несколько сохраненных ответов для эффективного URI запроса, эти сохраненные ответы будут признаны недействительными (см. раздел 4.4 [RFC7234]).

Это означает, что последующая команда GET для этого URL должна извлекать данные с исходного сервера, а не из кэшей.

Связанный контент