4

我想验证用户在突变期间提供的输入,然后在提供一些无效字段时提供错误。

这里有一个问题可以回答 GraphQL-JS 的问题

我想问这个关于使用 GraphQL-Java 实现的问题。

假设您有一个将数据发布到 API 服务器的表单。API 服务器验证输入并返回 JSON 对象。如果输入无效,则返回如下错误对象。

{errors: {field1: "is required"}}

在使用 GraphQL 时,我们如何处理和处理这些类型的错误?应该如何以及在哪里实现数据验证(应该是 GraphQL 的一部分还是应该在每个解析函数中)?

4

1 回答 1

2

graphql-java 实现有一个类用于检查查询是否无效(即graphql.validation.Validatior)。这样您就可以在执行查询字符串之前对其进行验证。

如果查询无效,您可以创建一个将List<ValidationError>生成错误响应的参数作为参数的方法。

例子:

List<ValidationError> errors = validator.validateDocument(graphQLSchema, requestString);
if (!errors.isEmpty()) { return executeError(errors); }
于 2016-11-30T20:53:20.597 回答