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'; // ES6var { 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>,originalError?: ?Error,extensions?: ?{ [key: string]: mixed })}
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): GraphQLFormattedErrortype 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.