2017-02-03 42 views
1

У меня есть веб-приложение, в котором учитель создает класс и может загружать материалы и добавлять учеников в класс. Студенты также могут присоединиться к классу конкретного преподавателя и загрузить любой загруженный материал.Отправить SSE конкретным клиентам

Когда преподаватель загружает материал в определенный класс, отправляется событие отправленного сервера каждому подключенному клиенту и клиенту, проверяются, связано ли это событие с клиентом. Вот пример кода:

let eventSource = new EventSource(url); 
eventSource.onmessage = function(event){ 
    if(joinedClasses.indexOf(event.data.class) !== -1){ 
    //notify the user. 
    } 
    //else just discard the message. 
} 

Я хочу знать, если это правильный способ сделать это, или я должен просто использовать (Long) Опрос или какой-либо другой метод. Благодарю.

+0

Это должно быть сделано на стороне сервера. Какой язык/структура вы используете на стороне сервера? – Mario

+0

@Mario. Я использую API Java от Джерси – Dapope

ответ

0

В зависимости от вашей серверной структуры вы можете попробовать с 3-мя различными подходами:

1) Передача идентификатора пользователя в качестве параметра GET, таким образом, вы бы иметь конкретный поток для каждого пользователя.

2) Другой способ состоит в том, чтобы иметь разные события на стороне сервера, а затем клиент будет слушать только события, имеющие для них значение.

3) Если у вас нет базы данных, сеансы также могут использоваться для некоторых случаев.

 Смежные вопросы

  • Нет связанных вопросов^_^