Аутентификация с использованием Orbited, STOMP и MorbidQ

StackOverflow https://stackoverflow.com/questions/1936537

  •  20-09-2019
  •  | 
  •  

Вопрос

Я использую Orbited для создания системы чата Comet на веб-сайте на основе PHP.Однако в настоящее время любой пользователь может подписаться или разместить пост на любом канале.

Что я хочу сделать, так это заставить браузер прослушивать обновления непосредственно с сервера Orbited, а все остальные действия (подписка, отправка) обрабатывать уровнем аутентификации PHP, который взаимодействует с Orbited через сокеты.Есть ли способ сделать это, или мне понадобится более надежная очередь обмена сообщениями?

Это было полезно?

Решение

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

Выполните отправку сообщения через PHP-скрипт (вызов AJAX), который будет:

  • проверьте, аутентифицирован ли отправитель
  • отправьте сообщение аутентифицированным пользователям (выполните итерацию по списку аутентифицированных пользователей и отправьте каждому пользователю сообщение).

Как отправить сообщение STOMP с PHP?Используйте PHP STOMP-клиент.

Другие советы

Если вы используете MorbiQ, вам следует ознакомиться с плагином RestQ (http://www.morbidq.com/trac/wiki/RestQ).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top