The graphql/error
module is responsible for creating and formatting
GraphQL errors. You can import either from the graphql/error
module, or from the root graphql
module. For example:
import { GraphQLError } from 'graphql'; // ES6 var { GraphQLError } = require('graphql'); // CommonJS
class GraphQLErrorA representation of an error that occurred within GraphQL.
function syntaxErrorProduces a GraphQLError representing a syntax error.
function locatedErrorProduces a new GraphQLError aware of the location responsible for the error.
function formatErrorFormat an error according to the rules described by the Response Format.
class GraphQLError extends Error { constructor( message: string, nodes?: Array<any>, stack?: ?string, source?: Source, positions?: Array<number> ) }
A representation of an error that occurred within GraphQL. Contains
information about where in the query the error occurred for debugging. Most
commonly constructed with locatedError
below.
function syntaxError( source: Source, position: number, description: string ): GraphQLError;
Produces a GraphQLError representing a syntax error, containing useful descriptive information about the syntax error's position in the source.
function locatedError(error: ?Error, nodes: Array<any>): GraphQLError {
Given an arbitrary Error, presumably thrown while attempting to execute a GraphQL operation, produce a new GraphQLError aware of the location in the document responsible for the original Error.
function formatError(error: GraphQLError): GraphQLFormattedError type GraphQLFormattedError = { message: string, locations: ?Array<GraphQLErrorLocation> }; type GraphQLErrorLocation = { line: number, column: number };
Given a GraphQLError, format it according to the rules described by the Response Format, Errors section of the GraphQL Specification.