2016-11-21 1 views
0

Я создаю приложение Angular2, которое вызовет API-интерфейс (Web API), который будет вызывать один или несколько микросервисов (Web API), и он будет агрегировать данные и вернуть одну полезную нагрузку обратно в заявление.API-интерфейс AngularJs вызывает несколько микросервисов

Прежде чем я создал шлюз API, я просто получил приложение Angular2 для каждой конечной точки API микросервиса независимо от нескольких компонентов. Например. Компонент клиента, называемый/api/customers, компонент заказа, называемый/api/orders и т. Д.

Мой вопрос - это лучший способ для приложения Angular2 вызвать API-шлюз, чтобы сделать один звонок для сборки страницы вместо этого каждого компонента, делающего отдельные вызовы?

Должен ли я сделать первый вызов api и хранить данные где-нибудь, например. localstorage, а затем, когда служба каждого компонента запрашивает его данные, он будет извлекать его из хранилища вместо вызова API?

ответ

0

Я думаю, что здесь есть два сценария.

  1. Компонент клиента является родительским элементом представления ордеров. В этом случае было бы целесообразно сделать один большой запрос и передать его на вид вашего заказа. Однако просто одновременное вызов двух конечных точек будет быстрее.

  2. Компонент Заказчика и вид ордеров полностью разделены. В этом случае не стоит делать один большой запрос. Вы можете сделать два отдельных запроса при каждой загрузке страницы. Если пользователь не хочет видеть Заказы, то это не полезно.

В целом, я считаю, что лучше практиковать, если у вас есть два отдельных запроса и вызывать их параллельно. Это позволяет разбить ваши модели на меньшие и иметь лучшую структуру.

Надеюсь, что это поможет. Cheers