Чем put отличается от patch?

106
25 декабря 2021, 04:00

Изучаю REST API. Не понимаю отличия метода PUT от PATCH: они же оба используются для обновления данных... Статьи в интернете на русском предоставляют много воды, нет ли ответа четко по-сути вопроса?

Answer 1

Ответ по сути вопроса можно найти тут. PUT требует полного дублирования всех полей объекта вместе c измененным: непродублированные поля будут затерты. Этот метод ведет себя как присваивание. Ниже я привел разбор полетов программы json-server.

До запроса PUT http://localhost/cars:

{"id": 1, "name": "Mazda", "year": "01.01.2001"}

Содержимое запроса PUT http://localhost/cars/1:

{"year": "02.02.2010"}

После запроса PUT http://localhost/cars:

{"id": 1, "year": "02.02.2010"}

PATCH же предоставляет возможность отправить несколько полей, будет произведено слияние по аналогии с Object.assign()

До запроса PATCH http://localhost/cars:

{"id": 1, "name": "Mazda", "year": "01.01.2001"}

Содержимое запроса PATCH http://localhost/cars/1:

{"year": "02.02.2010"}

После запроса PATCH http://localhost/cars:

{"id": 1, "name": "Mazda","year": "02.02.2010"}
READ ALSO
Русский текст в javascript

Русский текст в javascript

Получаю с помощью AJAX запроса русский текст с сервераПытаюсь вывести

139
Javascript Array перебрать массив

Javascript Array перебрать массив

У меня динамически можно создавать группы, у каждой группы своя цена

122
Что влияет на правильную работу запроса в браузере?

Что влияет на правильную работу запроса в браузере?

На html-странице есть кнопка, при нажатии на которую посылаются определенные запросыНо за первым компьютером один из запросов перенаправляет...

101
Как дождаться окончания transition

Как дождаться окончания transition

Есть вёрстка - https://mihinovgithub

203