2016-08-10 6 views
0

Я воспользовался двумя примерами использования Lagom для разработки архитектуры микросервисной архитектуры, а именно «чирпа» и «cargotracker», но ни один из них не показывает, как обновить существующий объект.Обновление в Lagom через REST API

Например, имея следующий объект с REST URI

Sugguestion { ид содержание автор количества просмотров }

api/suggestion  with Http Post  ----> add a new suggestion 
api/suggestion/:id with Http Get,  ---->read a suggestion 
api/suggestion/:id with Http Delete, ---->remove a suggestion 

Как насчет обновления?

1) api/suggestion/viewCount with Http Put?

2) api/suggestion /: id with Http Put?

3) api/suggestion /: id с Http Post?

Есть некоторые недостатки выше 3 Approch

для 1), необходимо определить отдельно класс данных для каждого полей, в противном случае, обновить непосредственно на предприятие предложение было бы ввести «изменяемые изменения», который Светлану принцип Лагома.

для 2) & 3), нужна глубокая копия старого состояния и обновление с измененными полями, в противном случае вводится также изменчивые изменения.

Есть ли другие варианты?

Благодаря

ответ

0

Мы используем что-то вроде

api/suggestion/:id PUT  // for updating the entire resource 
api/suggestion/:id/views //for updating a portion of the resource 

1) услуги Карта запросов к командам. команда может просто содержать подмножество полей в сущности. 2) и 3) вам необходимо прочитать документы и дизайн CQRS. Архитектура является главной задачей для решения проблем с одновременным обновлением изменяемого состояния

Смежные вопросы