首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >GraphQL可以查询第三方接口吗?

GraphQL可以查询第三方接口吗?
EN

Stack Overflow用户
提问于 2018-06-01 02:36:36
回答 1查看 827关注 0票数 1

我刚接触GraphQL,很好奇是否可以用它来查询外部的第三方应用程序接口来获取数据。我有一个express后端和一个react前端,我正在向第三方API发送一个GET请求,以获取贵金属的价格。

API响应一个大对象,其中充满了我不需要的东西,但我仍然通过HTTP获取。例如,API返回以下内容:

代码语言:javascript
复制
{
    "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...
}

如果我只对其中两个属性感兴趣,我可以这样做吗:

代码语言:javascript
复制
query {
   gold_bid_usd_toz
   silver_bid_usd_toz
}

只是不确定是否必须控制后端数据才能使用GraphQL。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-01 03:44:38

您可以直接从解析器返回请求响应。

然后,在与此解析器匹配的前端查询中,只获取您所要求的内容。

后端:

代码语言:javascript
复制
rootQuery {
  resolverName: () => getThirdParty
}

前端:

代码语言:javascript
复制
query {
 resolverName {
   whatYouWant1
   whatYouWant2
 }
}

您的查询和解析器都应与您的graphql架构匹配,但不应与第三方响应匹配。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50630724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档