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
Overview
class GraphQLError
A representation of an error that occurred within GraphQL.function syntaxError
Produces a GraphQLError representing a syntax error.function locatedError
Produces a new GraphQLError aware of the location responsible for the error.function formatError
Format an error according to the rules described by the Response Format.
Errors
GraphQLError
class GraphQLError extends Error {
constructor(
message: string,
nodes?: any[],
stack?: string,
source?: Source,
positions?: 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.
syntaxError
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.
locatedError
function locatedError(error: Error, nodes: 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.
formatError
function formatError(error: GraphQLError): GraphQLFormattedError
type GraphQLFormattedError = {
message: string,
locations: 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.