如何使用服务器发送的事件发送消息到具体的用户id ?



服务器发送的事件是否允许通过用户id向具体用户发送消息?还是像扇出一样?

发送给当前用户是唯一的选择;它不是一种广播技术,扇出也不是一种选择。

每个SSE连接是每个客户端的专用套接字。(WebSocket也是如此。)因此,如果你想广播到多个客户端,你需要在服务器端执行额外的步骤(例如共享内存,或者每个进程轮询一个数据库,等等)

如果你想发送消息给一个特定的用户id,那么它基本上是相同的。例如,为每个用户id创建一条DB记录(或共享内存插槽),并将消息存储在那里。如果该用户id具有SSE连接,则服务器端进程将轮询该特定的DB记录。每次更改时,它都会将新消息推送给客户端。

最新更新