Как сделать распознаватель GraphQL для списка объектов, возвращаемых API, используя Apollo? - PullRequest
0 голосов
/ 01 ноября 2019

Я новичок в GraphQL и хочу запустить свое первое приложение. Я видел несколько примеров, но они использовали несколько библиотек, и я просто хочу простой пример. Я видел https://www.youtube.com/watch?v=hLcAlln-D_s

Мой код Index.js

const { ApolloServer, gql } = require("apollo-server");
const fetch = require("node-fetch");    
const typeDefs = `
  type Query {   
    getApplicant: [Applicant]
  }
  type Applicant {
    FiscalYear:String
    JobNumber: String
    JobDescription: String
    AppsReceived: Int
    Female: Int
    Male: Int
    UnknownGender: Int
    Black: Int
    Hispanic: Int
    Asian: Int
    Caucasian: Int 
    AmericanIndian:Int
    Filipino: Int
    UnknownEthnicity: Int    
  } `;
const url = `http://localhost:52993/api/values`;    
const resolvers = {
    Query: {
        getApplicant: async () => {
            const response = await fetch(url).then(res => res.json());
            console.log(response);
            return response;                
        }
    }
};
const server = new ApolloServer({ typeDefs, resolvers });
server.listen().then(({ url }) => {
    console.log(`?  Server ready at ${url}`);
});

Данные, возвращаемые из API

[{   "FiscalYear": "2013-2014",
    "JobNumber": "9206 OP 2014/04/18",
    "JobDescription": "311 DIRECTOR 9206",
    "AppsReceived": 54,
    "Female": 20,
    "Male": 31,
    "UnknownGender": 3,
    "Black": 25,
    "Hispanic": 18,
    "Asian": 1,
    "Caucasian": 6,
    "AmericanIndian": 0,
    "Filipino": 0,
    "UnknownEthnicity": 4
  },
  {
    "FiscalYear": "2013-2014",
    "JobNumber": "1223 P 2013/08/09",
    "JobDescription": "ACCOUNTING CLERK 1223",
    "AppsReceived": 648,
    "Female": 488,
    "Male": 152,
    "UnknownGender": 8,
    "Black": 151,
    "Hispanic": 204,
    "Asian": 123,
    "Caucasian": 62,
    "AmericanIndian": 3,
    "Filipino": 79,
    "UnknownEthnicity": 26
  }]

, когда я запрашиваю данные, они всегда отображают ноль. Что япропал?

...