Частичное представление в API REST для коллекций и элементов - PullRequest
0 голосов
/ 10 мая 2018

Я собираю API, основанный на REST, но я не уверен, каким образом мне следует предоставлять ответ для коллекций в сравнении с отдельными ресурсами.

Имеет ли смысл иметь уменьшенное представление коллекции для одного предмета в мире REST?

Скажи, что у меня есть что-то вроде этого для коллекции альбомов:

{
    items: [
        {
            "id": 1,
            "title": "Thriller"
        },
        ...
    ]
}

Но тогда для самого отдельного предмета у меня было

{
    "id": 1,
    "title": "Thriller",
    "artist": "Michael Jackson",
    "released": "1982",
    "imageLinks": {
        "smallThumbnail": "...",
        "largeThumbnail": "..."
    }
    ...
}

1 Ответ

0 голосов
/ 10 мая 2018

Представление ресурса должно быть уникальным независимо от того, задано ли оно как коллекция или как отдельный элемент. Но вы можете ввести новый параметр, такой как fields , который может использоваться клиентами для получения только обязательного поля, тем самым оптимизируя пропускную способность.

/albums - Это должен дать список объектов, каждый из которых имеет структуру того, что вы бы дали в отдельном элементе api

/albums?fields=id,title - Это может дать список объектов только с идентификатором и заголовком.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...