First of all thanks for the great work. I am planning to generate an API gateway with this library. Is it possible to extend code generation? For example besides schema.graphql I want to define policy.graphql to automatically add guards for the generated endpoints/resolvers.
As an example, auto generating something like in the authentication example
func (r *queryResolver) Hero(ctx context.Context, episode Episode) (Character, error) {
if user := auth.ForContext(ctx) ; user == nil || !user.IsAdmin {
return Character{}, fmt.Errorf("Access denied")
}
// rest of the function
}
Any ideas are greatly appreciated. I can work on a PR for implementing generic functionality to support this kind of behavior but I think #228 is about this?
Ohh missed https://gqlgen.com/reference/directives/ seems like this can help greatly!
Directives are made for? @cemremengu closing issue? :)
Here's an example of integrating Casbin into gqlgen: https://github.com/WenyXu/gqlgen_casbin_RBAC_example
Most helpful comment
Ohh missed https://gqlgen.com/reference/directives/ seems like this can help greatly!