提问人:charanelgile 提问时间:5/24/2023 更新时间:5/24/2023 访问量:16
Socket.IO 在错误的会话上发出事件
Socket.IO emitting the event on the wrong Session
问:
这里是新手程序员。 在正在进行的工作评估的小型项目上需要一些帮助。
该项目是一个使用 JavaScript、Socket.IO 和 WebRTC 概念的视频聊天应用程序。 该 socket.id 被用作某种唯一代码来连接到其他用户/会话。
我打开了 2 个应用程序会话用于测试目的。
正在测试的功能是“拒绝”按钮,当一个用户(会话)尝试连接另一个用户(会话)时。
场景:(会话 A 尝试与会话 B 连接)无论请求类型是视频通话还是聊天,当我单击“拒绝”按钮时,似乎 socket.io 在会话 B 上发出事件(可以选择接受/拒绝请求的同一会话),使会话 A(尝试连接的会话)卡在连接尝试对话框中。
连接尝试期间的屏幕截图:会话 A 尝试连接到会话 B 会话 B 接收传入的连接请求
会话 B 拒绝连接尝试的屏幕截图 会话 B 收到会话 A 应收到的对话框 会话 A 卡在连接尝试屏幕上
这是我的项目存储库的链接:Meet-n-Greet 视频聊天应用程序
我认为问题来自“webRTChandler.js”中的函数“sendPreOfferResponse()”,来自“webRTChandler.js”的函数“sendPreOfferResponse()”它传递的数据的结构是:
const data = {
callerSocketId: connectedUserDetails.socketId,
preOfferResponse,
};
但是变量“connectedUserDetails”最初是在没有任何值的情况下定义的。因此,在“app.js”上的事件侦听器中,它仅接收以下数据:
const data = {
preOfferResponse
};
我尝试分配值为“socket.id”的“callerSocketId”键,但它获取当前会话的 socket.id,而不是尝试连接的会话。“callerSocketId”键,值为“socket.id”
如何获取尝试连接的会话的特定 socket.id?
答: 暂无答案
评论