如何更改来自外部api的json结果的graphql typedef名称?

时间:2018-04-25 17:21:27

标签: graphql

我在typedef中遇到了命名问题。提示如下的错误。

  

语法错误:预期名称,找到Int" 24"

我正在使用Coinmarketcap Api并使用我的apollo graphql服务器访问它。 api具有24h_volume_usdpercent_change_1h等命名,但只要名称中的整数,就会出现此名称问题。

我不确定如何解决这个问题。有人可以帮帮我吗?非常感谢你。

Schema.js

const typeDefs = `
    type cryptos {
        id: String
        name: String
        symbol: String
        rank: String
        price_usd: String
        price_btc: String
        24h_volume_usd: String
        market_cap_usd: String
        percent_change_1h: String
        available_supply: String
        total_supply: String
        last_updated: String
    }

    type Query {
        cryptos: [cryptos]
    }
`

resolvers.js

const resolvers = {
Query: {
    cryptos: () => {
        return axios.get('https://api.coinmarketcap.com/v1/ticker/').
        then(result => result.data );
    }
 }

1 个答案:

答案 0 :(得分:0)

使用地图功能处理api结果

`var newHashmap = {}; 
 Object.keys(hashmap).forEach(function(key){ 
 var value = hashmap[key]; 
 key = key + "xxx"; 
 console.log("changing:"); 
 console.log(key); newHashmap[key] = value 
 });`