Получить все записи с включенными изображениями, используя Contentful REST API

Я использую машинописный код и Contentful-ManagementAPI (вот почему я не использую клиент SDK) и хочу получить все записи определенного типа. Я называю Api следующим образом:axios.get("https://api.contentful.com/spaces/" + space_id + "/entries?content_type=" + content_type+"&include="+2)

Я получаю все запрошенные записи, но в поле изображения я получаю это:

poster:en-US: sys: {type: "Link", linkType: "Asset", id: "222xxm9aaAu4GiAc2ESw0Q"}

Итак, как я могу получить URL изображения? Буду признателен за любую помощь. Спасибо

3 ответа

Решение

Из содержательных документов:

CMA не поддерживает параметры include и locale.

Таким образом, я мог бы лучше использовать API доставки для извлечения контента и API управления для создания / обновления / удаления. Вот как это должно быть использовано.

Указанные активы и записи можно найти в includes объект в ответе API.

Ответ должен выглядеть примерно так:

{
   "sys": {
       "type": "Array"
   },
  "total": 9,
  "skip": 0,
  "limit": 100,
  "items": [ // Your items here ],
  "includes": {
      "Asset": [ // Your included assets here, this is where you find the url to the image ]
      "Entry": [ // Any referenced entries not included in the items array above ]
  }

Таким образом, чтобы найти фактический актив, который включает в себя все ваши данные (включая URL-адрес), вам нужно будет найти правильный актив, используя идентификатор ссылки (222xxm9aaAu4GiAc2ESw0Q), в includes.Asset объект.

Попробуйте include=10. Если вы используете несколько локалей, предоставьте резерв для каждой локали. Это сработало для меня.

Другие вопросы по тегам