Я читал о микросервисах, и у меня есть некоторые сомнения относительно того, какие данные следует отправлять на теле, и каковы данные, которые должны быть заполнены на сервере (с помощью идентификатора).Какую информацию следует отправлять на теле?
Например, представьте, что у нас есть агентство недвижимости, а модели домена - это агент, клиент и дом. Представьте себе, что для агента, чтобы представить дело, он должен:
- войдите в систему агентства с его счета
- создать профиль клиента в системе
- заполнить форму транзакции с
- данных клиента
- дом был продан
- нажмите на представить (это представляет данные в службу продаж)
Теперь мой вопрос, если служба продаж требуют полей, как имя и фамилию клиента, контакты клиента, адрес дома и так далее, мы должны:
- отправить все необходимые данные из браузера , или просто идентификатор дома и клиента, а сервис будет обрабатывать остальные?
- если у нас есть ограничение в системе, в котором говорится, что «вы можете продавать дома только своим клиентам», как мы гарантируем в службе продаж, что этот агент продает дом своему клиенту (как я могу доверять данным что происходит из браузера)?
Заранее спасибо.
Привет, спасибо за ответ. Да, я согласен, отправка идентификаторов и проверка на стороне сервера - это то, что я обычно делаю, но поскольку это микросервис, я ставил под сомнение эту практику. Например, если этот запрос отправлен службе, ответственной за продажи, как я могу проверить, может ли этот агент совершать транзакции с этим клиентом?Я знаю о денормализации, чтобы иметь требуемые данные в каждом микросервисе, но я не понимаю, должен ли я использовать его для проверки этого вида проверки/авторизации. –
Основной целью микросервисов является разделение проблем, поэтому по определению микросервисы должны вести себя как обычные службы и не должны магически давать особые привилегии входящим запросам. Даже если вы контролируете оба микросервиса, и даже если у вас нет (еще) других клиентов для получающего микросервиса, все равно необходимо выполнить стандартные процедуры авторизации и проверки, чтобы быть полностью автономными и независимо проверяемыми. – mahemoff
Привет. Из того, что я понимаю, вы подразумеваете, что микросервис должен иметь возможность выполнять все необходимые валидации, так как в этом случае микросервис «продажи» должен иметь всю необходимую информацию о клиентах каждого агента. Еще раз спасибо за ваши материалы. –