Клиентский запрос AppSync не возвращает полный ответ на данные - PullRequest
0 голосов
/ 11 июля 2019

У меня проблема с получением результатов из API AppSync через AWSAppSyncClient.Я могу выполнить запрос в консоли AWS AppSync и получить полные результаты, однако, когда я запускаю запрос от своего клиента, часть результатов, которые я ищу, возвращает пустой массив.

Я пытался похудетьзапрос на возвращение меньшего количества результатов, так как я однажды прочитал, что динамо будет запускать фильтр по возвращаемым результатам, если вы не предоставите свои собственные.Я также читал, что это может иметь какое-то отношение к ключам раздела, используемым в таблице DynamoDB, однако AppSync предоставил мне этот ресурс и обработал начальную конфигурацию.Я новичок в работе с AppSync, поэтому я как бы рисую пустое место, где даже начать искать проблему, потому что нет даже сообщения об ошибке.

Запрос, который я выполняю

export const getUserConversations = `query getUser($id: ID!) {
  getUser(id: $id) {
    id
    conversations {
      items {
        conversation{
          id
          associated{
            items{
              convoLinkUserId
            }
          }
        }
      }
    }
  }
}
`;

Звонок выполняется в файле действий с избыточностью

export const getUserConvos = (id) => async dispatch => {

  AppSyncClient.query({
    query: gql(getUserConversations),
    variables: {
      id: id
    }
  }).then(res => {
    console.log("RES FROM CONVO QUERY", res)
  })

}

Это ответ, который я получаю в браузере.items возвращает пустой массив.

getUser:
conversations:
items: []
__typename: "ModelConvoLinkConnection"
__proto__: Object
id: "HIDDEN_ID"
__typename: "User"
__proto__: Object
__proto__: Object

Однако, если я выполняю точно такой же запрос на игровой площадке на консоли AppSync, я получаю это ...

{
  "data": {
    "getUser": {
      "id": "HIDDEN_ID",
      "conversations": {
        "items": [
          {
            "conversation": {
              "id": "HIDDEN_ID",
              "associated": {
                "items": [
                  {
                    "convoLinkUserId": "HIDDEN_ID"
                  },
                  {
                    "convoLinkUserId": "HIDDEN_ID"
                  }
                ]
              }
            }
          },
          {
            "conversation": {
              "id": "HIDDEN_ID",
              "associated": {
                "items": [
                  {
                    "convoLinkUserId": "HIDDEN_ID"
                  },
                  {
                    "convoLinkUserId": "HIDDEN_ID"
                  }
                ]
              }
            }
          }
        ]
      }
    }
  }
}

* HIDDEN_ID является заполнителем

Я знаю, что объекты находятся в моей БД, однако, если я запускаю запрос через свое приложение реагирования, я ничего не получаю, а если я запускаю его в консоли на AWS, я получаю другой.Мне нужно иметь возможность получить доступ к этим разговорам через клиента.Что может быть причиной этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...