【问题标题】:Redirecting to new page in response to Socket.IO event响应 Socket.IO 事件重定向到新页面
【发布时间】:2012-05-12 15:12:45
【问题描述】:

我正在使用 Express 开发具有聊天功能(由 Socket.IO 提供支持)的多页 Web 应用程序。用户可以邀请其他人加入私人共享聊天室(也有其他组件,如共享绘图板)。我想在完成邀请交易后将两个用户(邀请者和被邀请者)重定向到不同的 URL。

由于 socket.io 无权访问我的路由的请求和响应对象,我试图将我的 socket.io 实例传递给我的路由处理。除了页面刷新时重复事件处理程序堆积的问题之外,Express 在响应已经发送后尝试进行重定向时会引发错误(这是有道理的)。

似乎实现此目的的唯一方法是在客户端上进行重定向,并将新的聊天室 URL 从 Socket.IO 传递给每个客户端。但是,依赖客户端进行状态转移似乎太脆弱了。

还有其他选择吗?实现我所追求的最佳方式是什么?

【问题讨论】:

    标签: node.js express socket.io


    【解决方案1】:

    我不太确定在客户端中执行此操作是否太脆弱。只需通过套接字发送 URL,然后使用 jQuery 执行 window.location.href = redirectUrl$('div').load(newContentUrl)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-29
      • 1970-01-01
      • 2021-04-05
      • 2010-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多