15

同じ行で毎回EOFエラーが発生し、コードが何度も変更され、以前のバージョンに劣化しましgraphqlたが、肯定的な結果はありませんでした。私のコードは次のとおりです。

const graphql = require('graphql')
const _ = require('lodash')
 const {
     GraphQLObjectType,
     GraphQLString,
     GraphQLInt,
     GraphQLSchema
 } = graphql

const users = [
    {id: '1', firstName: 'Ansh', age: 20},
    {id: '2', firstName: 'Ram', age: 21},
    {id: '3', firstName: 'Sham', age: 20}
]

 const UserType = new GraphQLObjectType({
     name: 'User',
     fields: {
        id: {type: GraphQLString},
        firstName: {type: GraphQLString},
        age: {type: GraphQLInt}
     }
 })

 const RootQuery = new GraphQLObjectType({
     name: 'RootQueryType',
          fields: {
             user: {
                 type: UserType,
                 args: {id: {type: GraphQLString}},
                 resolve(parentValue, args) { 
                    return _.find(users, {id: args.id})
                 }
             }
         }
     })

 module.exports = new GraphQLSchema({
    query: RootQuery 
})

エラーは次のとおりです。

    {
        "errors": [
        {
            "message": "Syntax Error GraphQL request (30:1) Unexpected <EOF>\n\n29: \n30: \n    ^\n",
            "locations": [
            {
                "line": 30,
                "column": 1
            }
            ]
        }
        ]
    }
4

7 に答える 7

0

ほとんどの場合、空のクエリを渡すと、このエラーが発生します。これを回避するには、graphiql でこれを試してください

query { 
   user {
     fields you need to retrieve
  }
}
于 2021-02-14T04:39:03.453 に答える
0

スキーマをステッチしようとしているときにこのエラーが発生しました。このエラーの理由は、タイプを宣言したが、それを実装しなかったためです。たとえば、ボディが空でした。

type User {

}

タイプを実装すると修正されました

于 2020-06-29T19:24:01.583 に答える