Lighthouse graphql подписки

Может кто-нибудь сказать мне, как использовать подписки Lighthouse GraphQL, я сделал все шаги, как описано здесь https://lighthouse-php.com/3.1/extensions/subscriptions.html но когда мобильная команда (Android и IOS) пытается использовать его, он попросил их ввести конечную точку веб-сокета, так как я могу сделать эту веб-розетку с подпиской на маяк graphql, я знаю о веб-сокете laravel в целом, но как подключить эти веб-розетки с подпиской на маяк graphql?

2 ответа

Подписки Lighthouse отправляются через Pusher- сервис по умолчанию. Когда вы выполните следующий запрос, Lighthouse зарегистрирует подписку на стороне сервера.

subscription PostUpdated {
    postUpdated(id: 123) {
        title
    }
}

Запрос вернет канал Pusher (см. Пример ниже). Все события в подписке, которую вы только что создали, будут отправлены на этот канал. Ваша клиентская реализация должна иметь возможность подписываться на Pusher-сообщения. Если вы используете Apollo или Relay modern, вы можете взглянуть на фрагменты в Lighthouse-docs.

{
  "data": {
    "postUpdated": null
  },
  "extensions": {
    "lighthouse_subscriptions": {
      "version": 1,
      "channels": {
        "PostUpdated": "private-lighthouse-wlAyAuW8aBlthctY2rkRGRlaaGq30Iqr-1564126310"
      }
    }
  }
}

Каждый раз, когда происходят изменения в сообщении с идентификатором 123, вы должны получать сообщение через Pusher с запрашиваемыми данными. Обратите внимание, что вы должны использовать @broadcast директива или вручную активировать подписку, см. триггеры подписок для получения дополнительной информации.

вам нужно использовать версию 4.18, остальное как в документации

Другие вопросы по тегам