Использование псевдонимов и отдельных полей имеет очень ограниченное удобство использования.
Вы можете использовать сложные фильтры (входные параметры), например список возвращаемых ключей и связанные с ними параметры, например
[{name:"hits", range:"month"},
{name:"bounces", range:"year"}]
С запросом - ожидаемая структура
{
stats {
name
sum
average
}
}
Обязательные поля могут различаться, например, только name
и sum
.
Вы можете вернуть массивы объекта fe
{ stats: [
{ name:"hits",
sum:12345,
average: 456 }
Здесь можно использовать псевдонимы для выбора различных наборов данных, таких как name
и sum
для hits
, bounces
дополнительно с average
.
... больше декларативный?
PS. Нет ничего, что "усложняло бы интеграцию для разработчиков переднего конца". Результат json, может быть преобразован / преобразован / адаптирован после выборки (cl inet side) при необходимости.