Может ли GraphQL запрашивать сторонний API?

Я новичок в GraphQL, и мне было любопытно, могу ли я использовать его для запроса данных к внешнему стороннему API. У меня есть экспресс-сервер и интерфейс для реагирования, и я отправляю запрос GET в сторонний API по цене драгоценных металлов.

API отвечает одним большим объектом, который заполнен вещами, которые мне не нужны, но я все еще получаю через HTTP. Например, API возвращает это:

{
    "gold_bid_usd_toz": "1303.58",
    "gold_ask_usd_toz": "1304.58",
    "gold_change_dollar_usd_toz": "1.23",
    "gold_change_percent_usd_toz": "0.09%",
    "gold_high_usd_toz": "1306.51",
    "gold_low_usd_toz": "1299.85",
    "gold_londonfix_am": "1320.7",
    "gold_londonfix_pm": "1319.92",
    "silver_bid_usd_toz": "16.5",
    "silver_ask_usd_toz": "16.6",
    "silver_change_dollar_usd_toz": "-0.02",
    "silver_change_percent_usd_toz": "-0.13%",
    "silver_high_usd_toz": "16.6",
    "silver_low_usd_toz": "16.46",
    "silver_londonfix": "16.6",

    ...LOTS MORE...
}

Если меня интересуют только два свойства, могу я сделать что-то вроде этого:

query {
   gold_bid_usd_toz
   silver_bid_usd_toz
}

Просто не уверен, что мне нужно контролировать данные серверной части, чтобы использовать GraphQL. Спасибо.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
1
0
730
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете вернуть свой ответ на запрос прямо из преобразователя как есть.

Затем во внешнем запросе, соответствующем этому преобразователю, получите только то, что вы просили.

Бэкэнд:

rootQuery {
  resolverName: () => getThirdParty
}

Внешний интерфейс:

query {
 resolverName {
   whatYouWant1
   whatYouWant2
 }
}

И ваш запрос, и преобразователь должны соответствовать вашей схеме graphql, но не ответу третьей стороны.

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