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, остальное как в документации