我正在尝试为我的 spring-boot/graphQL/SPQR-project 创建一些身份验证机制。我设法通过 @GraphQLRootContext 注释在单个服务方法上做到这一点:
@GraphQLMutation(name = "createProblem")
public Problem createProblem(
@GraphQLRootContext DefaultGlobalContext<Object> context,
@GraphQLArgument(name = "problemInput") @Valid Problem problemInput)
{
WebRequest request = (WebRequest) context.getNativeRequest();
String token = request.getHeader("token");
}
在这里,我可以提取 JWT 令牌并验证/验证它。但是,我想在全局级别上执行此操作,而不必将上下文参数添加到我的所有方法中。我正在尝试按照此处所述实现 ResolverInterceptor 。
但是,我不知道如何将这个 Interceptor 注册到 spring 应用程序中,以便正确调用它。谁能帮我?
提前致谢, 马蒂亚斯