如何将用户名添加到 graphql context/data 从 RestController 获取环境

How to add username to graphql context/data fetching environment from RestController

我有一个 spring 休息控制器,它有一个端点来接收所有 graphql query/mutation 请求。端点如下所示

@RequestMapping(value="/test", method = RequestMethod.POST)
public ResponseEntity testService(@RequestHeader("user") String userName, 
@RequestBody String query) {
ExecutionResult result = graphQL.execute(query);
}

我已经正确设置了我的 graphql object。我如何将用户名从请求 header 传递到 graphql 查询,以便数据提取器可以检索它以更新 userModified 信息?

不要使用简单的GraphQL#execute(String)方法,而是更强大的版本GraphQL#execute(ExecutionInput)

例如

ExecutionResult executionResult = graphQL.execute(ExecutionInput.newExecutionInput()
                .query(query)
                .context(username)
                .build());