Где должен храниться слой отображения для мыльного API? - PullRequest
0 голосов
/ 27 марта 2019

У меня сейчас следующая проблема:

У нас есть несколько сайтов, использующих сервис мыльного API, которому для его сохранения требуется большая часть данных с этих сайтов - в основном хранилище данных.

До сих пор мы сохраняли прокси-классы на каждом сайте (сгенерированные Visual Studio, добавляя ссылку на сервис - но это не главное), и, таким образом, у каждого сайта был свой потребитель, который обрабатывает сопоставление с объектом, необходимым для API. , Важно отметить, что данные сайта (источник отображения) являются неструктурированными JSON, а данные API структурированы.

Идея состоит в том, чтобы изменить это, просто отправить json прямо в мыльный API и вместо этого просто обработать отображение внутри API.

Потенциальные преимущества: 1. Связанные с развертыванием: отображение, нуждающееся в изменении, подразумевает одно развертывание API, а не 7 развертываний сайта. 2. Пропуск слоя dto (прокси-классов, которые в данный момент генерируются внутри потребителя сайта), что устраняет некоторую сложность. 3. Сайты и API-интерфейс являются внутренними, поэтому изменение договора можно увидеть сразу по всей компании.

Тем не менее, это кажется неестественным, поскольку, посылая json напрямую, мы больше не навязываем контракт, wsdl не имеет смысла, а также решение, которое сейчас на месте, является "ортодоксальным".

Каковы недостатки / преимущества обоих методов?

Спасибо

...