AppSync / Amplify - как определить подписки GraphQL - PullRequest
0 голосов
/ 12 ноября 2018

Я использую Amplify для автоматической генерации запросов, мутаций и подписок. а у меня такой тип:

type Message @model {  
  id: ID!
  author: User @connection(name: "UserMessages")
  content: String
}

Как добавить authorID в качестве фильтра для подписок на новые сообщения с использованием сгенерированной схемы Amplify?

1 Ответ

0 голосов
/ 12 ноября 2018

Вы можете добавить свои собственные поля подписки, которые параметризованы так, как вам нравится.

Попробуйте это

# Add the authorId explicitly and turn off the generated subscriptions.
type Message @model(subscriptions: null) {  
  id: ID!
  author: User @connection(name: "UserMessages")
  authorId: String
  content: String
}
type Subscription {
  onCreateMessage(authorId: String!): Message @aws_subscribe(mutations: "createMessage")
}

Подписанные клиенты получают только сообщения с authorId, указанным в запросе на подписку:

subscription SubscribeToNewMessages($id: String!) {
  onCreateMessage(authorId: $id) {
    id
    authorId
    content
  }
}
...