当前位置: 首页 > 知识库问答 >
问题:

突变中未使用GraphQL变量

韶弘壮
2023-03-14

我的变异查询:

mutation ($matchId: String!) {
  assignMatch(matchId: $matchId) {
    id
  }
}

查询变量:

{ "matchId": "123" }

GraphQL模式(突变定义):

type Mutation {
    assignMatch(matchId: String!): Assignment
}

我尝试同时使用GraphiQL接口和apollo-client来发送带有变量的请求,但出现了相同的错误。有什么想法吗?

共有1个答案

郭单鹗
2023-03-14

耶!!原因是我的GraphQLController类没有解析请求中的变量:

@RequestMapping(value = "/graphql", method = RequestMethod.POST,
        consumes = MediaType.APPLICATION_JSON_UTF8_VALUE,
        produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@ResponseBody
public String execute(@RequestBody Map<String, Object> request) throws IOException {
    ExecutionInput executionInput = ExecutionInput.newExecutionInput()
            .query((String) request.get("query"))
            .operationName((String) request.get("operationName"))
            // THE FOLLOWING LINE WAS ABSENT:
            .variables((Map<String, Object>) request.get("variables"))
            .build();
    ExecutionResult executionResult = graphQL.execute(executionInput);
    return mapper.writeValueAsString(executionResult);
}
 类似资料:
  • 我正在尝试向使用Apollo的GraphQL服务器发送突变查询。 然而,我只看到实现这一点的唯一方法是使用突变组件。https://www.apollographql.com/docs/react/essentials/mutations/#the-突变成分 有没有一种简单的方法可以发送这样的突变? 从“graphql标记”导入gql;

  • 我使用的是Android系统的图形ql阿波罗客户端。我能够使用单个字段的突变传递数据,没有任何问题。在突变中使用输入对象时,出现了无法读取未定义的电子邮件属性的错误。但是在浏览器中运行时,同样的图形ql工作。 Graphql突变 输入 API调用的Java代码

  • 我在GraphQL中遇到了一些困难,其中模式中的类型包括嵌套类型。所以假设我有一个预订的数据类型: 在模式文件中,我还有一个如下所示的根变异: 我可以在 GraphiQL 中编写一个突变来为预订创建数据,没问题: 到目前为止一切都很好。现在,我需要向原始预订对象添加一个嵌套类型来记录分配给预订的工作人员。因此,我为工作人员添加了类型(输入和输出类型),并将这些类型添加到预订类型和突变中: 预订类型

  • 我正在开发一个GraphQL API,其中有一个带有初步数据比较的导入特性(在现有数据之间 电流为: API使用者执行GQL查询查询预览导入($数据:字符串),其中,是base64编码的电子表格。在后端解析数据,并在数据库中插入一条guid为的记录。最后,API返回电子表格中的数据与数据库中的数据以及guid之间的差异结果 前端然后要求用户在看到比较(创建、更新、删除)后确认导入。为此,向API发

  • 所以我不知道这是否真的描述了我的问题,但这是我能得到的最接近的吗? 我正在使用AWSAppsyncClient进行一些GraphQL突变。由于模型的性质,在更大程度上,由于我缺乏经验,我需要创建一个记录,然后创建两个依赖于第一个的记录,然后才能将它们链接到数据库中。 目前,我正在进行第一次变异,它返回所创建记录的ID。然后在查询返回的promise中创建中间记录。它基本上看起来像: 问题是Prom

  • 我试图让我的elm(v:0.18)客户机通过GraphQL与我的后端对话。我现在试图避免elm-graphql库和基本的elm HttpBuilder模块。 login命令如下所示: