Каков эквивалентный метод REST и запрос для этого sql запроса?
Как бы вы сделали это на веб-странице? Вы бы отправили данные формы POST.
Например, если вам нужно было
GET /emailAddresses
, а затем вы заметили, что в списке была ошибка, которую вы хотели исправить, вы вероятно, щелкнул бы ссылку «исправить это сообщение», которая загрузила бы новую форму
GET /fixThisEmail?oldEmail=oldemail@example.com
И затем вы заполнили бы адрес замены в форме (в которой исходный адрес был бы предварительно загружен во вход контроль). Поскольку ресурс / emailAddresses представляет собой кэшируемые данные, которые вы хотите изменить, отправка формы, вероятно, будет выглядеть следующим образом:
POST /emailAddresses
Content-Type: application/x-www-form-urlencoded
oldEmail=oldemail@example.com&newEmail=newemail@example.com
Если вместо этого вы захотите использовать идиому удаленной авторизации, вы можете разумно отредактировать свою собственную локальную копию. списка адресов электронной почты, чтобы исправить ошибку, а затем отправить исправленное представление обратно на сервер
GET /emailAddresses
(make the edit in your local copy)
PUT /emailAddresses
PATCH удобно, когда список намного больше, чем заголовки http, и редактирование мало по сравнению с размер списка.
GET /emailAddresses
(make the edit in your local copy)
PATCH /emailAddresses
... но обратите внимание, что для PUT и PATCH вам необходимо выяснить, как извлечь из тела запроса вещи, которые изменились, и вычислить правильное значение SQL обновить запрос для использования. Получение «старого» адреса электронной почты для сопоставления может быть болезненным, если его нет в новом представлении.
Вы можете сделать это несколько проще, используя сделанное на заказ представление документа патча, но это ограничивает диапазон клиенты общего назначения, которые могут использовать ваш API.