Предположим, две таблицы в реляционной базе данных A & B и таблица соединения C. Таблица соединения пуста, пока отношения не будут добавлены явно.
Я выставляю конечные точки REST для добавления / удаления этих отношений (добавить / удалить запись в таблице C). Они не изменяют записи в таблице A или B, но с точки зрения потребителя связь A с B так же важна, как и сами объекты. будет чувствовать , как будто ресурс изменяется. Но на самом деле происходит добавление / удаление строки из таблицы C.
Какой глагол (ы) будет наиболее подходящим для добавления / удаления конечных точек? POST / DELETE? PUT / PUT? Для PATCH может быть даже рассмотрен случай (если я выберу «измененный» маршрут, я не заменяю весь ресурс, только его часть)
ОБНОВЛЕНИЕ: Я наблюдаю похожие ситуации, возникающие при создании нового ресурса (/ api / friendships / create | delete). Если это в конечном итоге является ответом, пусть будет так, но отношения в моем случае больше похожи на список воспроизведения , добавляемый / удаляемый из библиотеки