api-platform: автоматическая подписка на mercure для запросов GraphQL

api-платформа автоматически выдает события в центр Mercure при обновлении ресурсов, помеченных как mercure=true и публикует темы для прослушивания в соответствии GET конечные точки. Ницца. Есть ли уже опция, которую я могу использовать в сгенерированных конечных точках GraphQL?

Документы Mercure говорят: https://github.com/dunglas/mercure, что mercure должен "очень хорошо интегрироваться" с любым API-интерфейсом GraphQL, если он "возвращает URL соответствующей темы ". Но на самом деле API GraphQL, сгенерированный api-платформой, этого не делает ( https://api-platform.com/docs/core/mercure/). Я что-то пропустил или это скоро? Использование apollo-vue на внешнем интерфейсе.

Чтобы обойти это, я мог слушать изменения всех идентификаторов сущностей, используя выделенные EventSource темы на фронтенде. Я хотел бы использовать шаблон URI, как http://localhost:8080/product_streams/{id} там. Но мне не удается написать шаблон URI, который соответствует только определенным идентификаторам, таким как: http://localhost:8080/product_streams/{id:123,456,789} чтобы получать только обновления для потоков № 123 456 789 (пробовал https://uri-template-tester.mercure.rocks/ && https://tools.ietf.org/html/rfc6570) без успеха:(

0 ответов

Платформа API пока не поддерживает подписки GraphQL. Планируется добавить поддержку подписок с использованием Mercure (которая, помимо прочего, предназначена для этого варианта использования), но работа еще не началась. Любая помощь приветствуется!

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