В настоящее время я пытаюсь создать небольшой REST API.
Допустим, у меня есть ресурс (book
), который состоит из нескольких других ресурсов (например, author
).
Оба ресурса имеют отдельные API, которые развернуты в разных сервисах (со своими собственными базами данных).
Автор ничего не знает о книгах. Однако книги знают своего автора.
Теперь я хочу поддерживать такие запросы, как books?author.surname=Poe
.
Я пытаюсь понять, как может выглядеть реализация, поддерживающая такого рода фильтрацию связанных ресурсов.
Поскольку автор не знает о книгах, я не могу попросить автора API дать мне подходящих авторов и перейти к соответствующим книгам.
Что я мог сделать, так это спросить для каждой книги, которую я имею в БД, API автора для этого автора книги, а затем отфильтровать его по имени автора. Но это звучит ужасно нереально.
Я полагаю, что почти каждая SOA сталкивается с этой проблемой довольно рано в проекте.
Я спрашиваю, существует ли уже общий шаблон или лучший метод , который решает эту проблему?