AWS Appsyn c Javascript пример запроса и синтаксис ввода - PullRequest
1 голос
/ 15 января 2020

Я использую Amplify и Appsyn c для приложения, которое я создаю. Прямо сейчас я пытаюсь запросить пользователя и использую клиент appsyn c:

const client = new AWSAppSyncClient({
  url: awsconfig.aws_appsync_graphqlEndpoint,
  region: awsconfig.aws_appsync_region,
  auth: {
    type: awsconfig.aws_appsync_authenticationType,
    jwtToken: async () => (await Auth.currentSession()).getIdToken().getJwtToken()
  },
  complexObjectsCredentials: () => Auth.currentCredentials()
});

Я смог успешно запустить мутацию, используя пример, представленный на сайте амплификации

const result = await client.mutate({
    mutation: gql(createTodo),
    variables: {
      input: {
        name: 'Use AppSync',
        description: 'Realtime and Offline',
      }
    }
  });

но когда дело доходит до выполнения запроса с использованием клиента, единственный пример, который они предоставляют, - это операция со списком

const result = await client.query({
    query: gql(listTodos)
  });

. Они не предоставляют пример того, как запросить с помощью Speci c ID, так что мне интересно, кто-нибудь может пролить свет на синтаксис для этого, привести пример или указать мне в направлении хорошей ссылки для этого? Заранее спасибо.

1 Ответ

1 голос
/ 15 января 2020

Это не сильно отличается от примера мутации, см. Код ниже:

const getBlog = `query GetBlog($id: ID!) {
  getBlog(id: $id) {
    id
    title
    content
    author
  }
}
`;


Запустите запрос с параметром

   const result = await client.query({
        query: gql(getBlog),
        variables: { id: '0002b432-157a-4b6a-ad67-6a8693e331d1' }
             });
      console.log(result.data.getBlog);


Или

  const input = { id: '0002b432-157a-4b6a-ad67-6a8693e331d1' }
      const result = await client.query({
              query: gql(getBlog),
              variables: input
                                   });
      console.log(result.data.getBlog);
...