【问题标题】:How to fetch query in graphql? [duplicate]如何在graphql中获取查询? [复制]
【发布时间】:2018-06-19 15:48:45
【问题描述】:

我正在学习 graphql。我一直在获取 api 信息。

我的架构是:

const particularUser = new GraphQLObjectType({
    name: "particularUser",
    description: "particular user field for person",
    fields: () => ({
        "id": {type: GraphQLInt},
        "first_name":  {type: GraphQLString},
        "last_name": {type: GraphQLString},
        "avatar": {type: GraphQLString}
    })
}); 

我的主要查询架构是这样的:

specificUser:{
            type:particularUser,
            description:"fetching particular user for specific id",
            args:{
                id:{
                    type:new GraphQLNonNull(GraphQLString)
                }
            },
            resolve:(_,{id}) => {
                console.log({id})
                const url = `https://reqres.in/api/users/${id}`;
                console.log(url)
                return axios.get(url).then((response) => {
                    console.log(response.data)
                        return response.data;
                    })
                    .catch((error) => {
                        return error;
                    })
            }

        }

当我在 graphql 服务器上运行时,它返回空值我做错了什么??

【问题讨论】:

    标签: graphql express-graphql


    【解决方案1】:

    你必须返回response.data.data

    const specificUser = {
        type: ParticularUser,
        args: { id: { type: new GraphQLNonNull(GraphQLString) } },
        description: 'fetching particular user for specific id',
        resolve: (_, { id }) =>
          axios
            .get(`https://reqres.in/api/users/${id}`)
            .then(response => response.data.data)
            .catch(error => error),
    };
    

    【讨论】:

      猜你喜欢
      • 2018-08-04
      • 2018-08-05
      • 2019-09-10
      • 2017-09-23
      • 2021-03-01
      • 2020-01-20
      • 2019-10-25
      • 1970-01-01
      • 2018-07-09
      相关资源
      最近更新 更多