1

Is there a way when using Lighthouse PHP to get the GraphQL validation error to appear side by side with the Laravel validation errors? Currently the graph QL validations cause a different type of error, before the Laravel error are run.

For example if I submit the following mutation:

mutation register(
   password: 123456
) {
  id
}

I will get back just an error back

{ "message": "Variable username not present. Expected type String",
  "extensions": {
      "category": "graphql"
   }
}

Then when I submit:

mutation register(
   username: somethingStupid
   password: 123456
) {
  id
}

Then I will get this error:

{ "message": "Validation failed for the field [register].",
  "extensions": {
      "validation": {
           "username": [
                "Username must be unique."
                    ]
            },
            "password": [
                "Password must contain letters and numbers"
                    ]
            },
       "category": "validation"
    },
}

For my front end I'd like them only to have to expect a single error bag, but this seems to require them to expect two different types of errors. Assuming my Laravel validations cover the schema definition, I would like for them never to see the GraphQl errors. Or am I missing the concept of GraphQL somehow?

cfkane
  • 643
  • 1
  • 6
  • 16

0 Answers0