Skip to content

Commit de18ad2

Browse files
committed
Handle auth erros
1 parent 903dce4 commit de18ad2

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

lib/graphql/schema/resolver.rb

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,12 @@ def call
6666
q = context.query
6767
trace_objs = [object]
6868
q.current_trace.begin_execute_field(field, @prepared_arguments, trace_objs, q)
69-
is_authed, new_return_value = authorized?(**@prepared_arguments)
69+
begin
70+
is_authed, new_return_value = authorized?(**@prepared_arguments)
71+
rescue GraphQL::UnauthorizedError => err
72+
new_return_value = q.schema.unauthorized_object(err)
73+
is_authed = true # the error was handled
74+
end
7075

7176
if (runner = @field_resolve_step.runner).resolves_lazies && runner.schema.lazy?(is_authed)
7277
is_authed, new_return_value = runner.schema.sync_lazy(is_authed)

0 commit comments

Comments
 (0)