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