AWS GraphQl不更新

发布于 2025-02-11 20:04:21 字数 1967 浏览 2 评论 0原文

我在这里有此查询:

export const econStatusUpdate = (
  groupRequestId: string,
  status: AnforderungEconStatusT
) => {
  console.log(status);
  return axios({
    url: envs.graphqlApiEndpoint!,
    method: "post",
    headers: {
      "x-api-key": envs.graphqlKey!,
    },
    data: {
      query: print(gql(updateGrouprequest)),
      variables: {
        input: {
          id: groupRequestId,
          [status]: true,
        },
      },
    },
  }).then((res) => console.log(res?.data.data));
};

这就是更新的样子:

export const updateGrouprequest = /* GraphQL */ `
  mutation UpdateGrouprequest(
    $input: UpdateGrouprequestInput!
    $condition: ModelGrouprequestConditionInput
  ) {
    updateGrouprequest(input: $input, condition: $condition) {
      id
      requesterId
      groupId
      accepted
      message_received
      consent_granted
      get_degree
      createdAt
      updatedAt
      _version
      _deleted
      _lastChangedAt
    }
  }
`;

由于某种原因,这不会更新它。它也不会丢任何错误。我得到的回应永远是:

get_degree
{
  updateGrouprequest: {
    id: '327647e7-c267-4514-ba0e-5bb7fbefe586',
    requesterId: 'b54807ef-3b53-42ee-a559-0c1042d7a121',
    groupId: '32cdcbe8-646d-4680-bb64-8172452a46ca',
    accepted: false,
    message_received: false,
    consent_granted: false,
    get_degree: false,
    createdAt: '2022-06-29T18:16:31.766Z',
    updatedAt: '2022-06-29T18:16:31.766Z',
    _version: 17,
    _deleted: null,
    _lastChangedAt: 1656527657777
  }
}

只有时间和版本改变,我在做什么错?

这也是我的GraphQl架构:

type Grouprequest
  @model
  @auth(rules: [{ allow: private }, { allow: public, provider: apiKey }]) {
  id: ID!
  requesterId: ID!
  groupId: ID!
  accepted: Boolean @default(value: "false")

  message_received: Boolean @default(value: "false")
  consent_granted: Boolean @default(value: "false")
  get_degree: Boolean @default(value: "false")
}

I have this query here:

export const econStatusUpdate = (
  groupRequestId: string,
  status: AnforderungEconStatusT
) => {
  console.log(status);
  return axios({
    url: envs.graphqlApiEndpoint!,
    method: "post",
    headers: {
      "x-api-key": envs.graphqlKey!,
    },
    data: {
      query: print(gql(updateGrouprequest)),
      variables: {
        input: {
          id: groupRequestId,
          [status]: true,
        },
      },
    },
  }).then((res) => console.log(res?.data.data));
};

And this is how the update looks like:

export const updateGrouprequest = /* GraphQL */ `
  mutation UpdateGrouprequest(
    $input: UpdateGrouprequestInput!
    $condition: ModelGrouprequestConditionInput
  ) {
    updateGrouprequest(input: $input, condition: $condition) {
      id
      requesterId
      groupId
      accepted
      message_received
      consent_granted
      get_degree
      createdAt
      updatedAt
      _version
      _deleted
      _lastChangedAt
    }
  }
`;

For some reason this does not update it. It also throws no error. My response what i get is always:

get_degree
{
  updateGrouprequest: {
    id: '327647e7-c267-4514-ba0e-5bb7fbefe586',
    requesterId: 'b54807ef-3b53-42ee-a559-0c1042d7a121',
    groupId: '32cdcbe8-646d-4680-bb64-8172452a46ca',
    accepted: false,
    message_received: false,
    consent_granted: false,
    get_degree: false,
    createdAt: '2022-06-29T18:16:31.766Z',
    updatedAt: '2022-06-29T18:16:31.766Z',
    _version: 17,
    _deleted: null,
    _lastChangedAt: 1656527657777
  }
}

Only the time and version changes, what i am i doing wrong?

Here is also my graphql schema:

type Grouprequest
  @model
  @auth(rules: [{ allow: private }, { allow: public, provider: apiKey }]) {
  id: ID!
  requesterId: ID!
  groupId: ID!
  accepted: Boolean @default(value: "false")

  message_received: Boolean @default(value: "false")
  consent_granted: Boolean @default(value: "false")
  get_degree: Boolean @default(value: "false")
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半衾梦 2025-02-18 20:04:21

您需要增加_version。您要么手动或自动进行。我使用date.now()做到这一点

export const econStatusUpdate = (
  groupRequestId: string,
  status: AnforderungEconStatusT
) => {
  console.log(status);
  return axios({
    url: envs.graphqlApiEndpoint!,
    method: "post",
    headers: {
      "x-api-key": envs.graphqlKey!,
    },
    data: {
      query: print(gql(updateGrouprequest)),
      variables: {
        input: {
          id: groupRequestId,
          [status]: true,
          _version: Date.now()
        },
      },
    },
  }).then((res) => console.log(res?.data.data));
};

You need to increase the _version.You either do it manually or automatic. I do it with Date.now()

export const econStatusUpdate = (
  groupRequestId: string,
  status: AnforderungEconStatusT
) => {
  console.log(status);
  return axios({
    url: envs.graphqlApiEndpoint!,
    method: "post",
    headers: {
      "x-api-key": envs.graphqlKey!,
    },
    data: {
      query: print(gql(updateGrouprequest)),
      variables: {
        input: {
          id: groupRequestId,
          [status]: true,
          _version: Date.now()
        },
      },
    },
  }).then((res) => console.log(res?.data.data));
};
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文