从 GraphQL 返回错误-Java
Returning error from GrapQL-Java
我想在更改期间验证用户提供的输入,然后在提供了一些无效字段时提供错误。
有一个问题回答了 GraphQL-JS 的问题
我想问这个关于使用 GraphQL 实现的问题-Java。
假设您有一个将数据发布到 API 服务器的表单。 API 服务器验证输入和 returns JSON 对象。如果输入无效,将返回如下所示的错误对象。
{errors: {field1: "is required"}}
在使用 GraphQL 时,我们如何处理和提供此类错误?应该如何以及在何处实施数据验证(应该是 GraphQL 的一部分还是应该在每个解析函数中)?
graphql-java 实现有一个 class 用于检查查询是否无效(即 graphql.validation.Validatior
)。这样你就可以在执行它们之前验证你的查询字符串。
如果查询无效,您可以创建一个将 List<ValidationError>
作为生成错误响应的参数的方法。
示例:
List<ValidationError> errors = validator.validateDocument(graphQLSchema, requestString);
if (!errors.isEmpty()) { return executeError(errors); }
我想在更改期间验证用户提供的输入,然后在提供了一些无效字段时提供错误。
有一个问题回答了 GraphQL-JS 的问题
我想问这个关于使用 GraphQL 实现的问题-Java。
假设您有一个将数据发布到 API 服务器的表单。 API 服务器验证输入和 returns JSON 对象。如果输入无效,将返回如下所示的错误对象。
{errors: {field1: "is required"}}
在使用 GraphQL 时,我们如何处理和提供此类错误?应该如何以及在何处实施数据验证(应该是 GraphQL 的一部分还是应该在每个解析函数中)?
graphql-java 实现有一个 class 用于检查查询是否无效(即 graphql.validation.Validatior
)。这样你就可以在执行它们之前验证你的查询字符串。
如果查询无效,您可以创建一个将 List<ValidationError>
作为生成错误响应的参数的方法。
示例:
List<ValidationError> errors = validator.validateDocument(graphQLSchema, requestString);
if (!errors.isEmpty()) { return executeError(errors); }