Предположим, что у нас есть какая-то коллекция users
. Каждый user
(отдельный ресурс) имеет своего рода статистику - количество комментариев, количество звонков, количество чего угодно. И каждая коллекция users
может также иметь какую-то статистику - глобальную статистику.
Эта статистика может быть любой, от количества комментариев до чего-то более сложного.
В настоящее время я думаю о двух основных способах "интеграции" статистики в мой RESTful API:
- Для каждого отдельного ресурса
user
добавить специальное вычисляемое поле - balance
, mediumAgeOfMaleFriends
и т. Д. При выполнении запроса GET
к ресурсу user
я зациклюсь для каждого поля в параметре запроса fields
и вычислю соответствующие значения. Пример: .../user/123?fields=balance,name,email,mediumAgeOfFemaleFriends
- В каждом ресурсе создайте подресурс с именем
reports
(или что-то в этом роде), создайте шаблоны ресурсов отчета (с предопределенными конфигурациями) и выполните такие же GET
запросы, например: .../users/123/reports/1?from=...&to=...
Но эти два способа не похожи на настоящие RESTful способы.