Javascript Webtc,将用户连接到相同的服务,但答案不同?

Javascript Webtc,将用户连接到相同的服务,但答案不同?,javascript,webrtc,Javascript,Webrtc,我有一个简单的webrtc视频聊天,通过扩展这个无服务器实现,它只能支持两个用户 我是这样建立连接的:第一个用户打开一个页面并单击“创建”按钮,服务将保存到服务器上的一个文件中,创建者开始发送重复的ajax请求以检查答案 用户2连接到页面并单击join,他通过ajax从服务器获得报价,生成答案并通过ajax将其保存到文件中 用户1现在可以通过他的ajax从用户2那里获取答案,并且他们已成功连接 问题是当用户2刷新页面并尝试再次连接时。用户一检测到iceConnectionState===“已断开

我有一个简单的webrtc视频聊天,通过扩展这个无服务器实现,它只能支持两个用户 我是这样建立连接的:第一个用户打开一个页面并单击“创建”按钮,服务将保存到服务器上的一个文件中,创建者开始发送重复的ajax请求以检查答案

用户2连接到页面并单击join,他通过ajax从服务器获得报价,生成答案并通过ajax将其保存到文件中

用户1现在可以通过他的ajax从用户2那里获取答案,并且他们已成功连接

问题是当用户2刷新页面并尝试再次连接时。用户一检测到iceConnectionState===“已断开连接”,并再次开始检查答案。。。在用户2生成答案后,什么也没有发生。我可以看到他正在创建答案,用户1正在接受答案,但peer.onopen再也不会被解雇,我无法连接用户


在尝试重新连接之前,我应该做些什么?以某种方式清除流、清除连接、重新初始化某些内容等

这不是无服务器的。它只是基于轮询的客户端-服务器信令


听起来用户1上的RTPeerConnection在页面刷新时关闭。您需要重新创建RTPeerConnection,然后创建Offer,以便在其上设置本地描述。我不知道如果您在页面刷新之前使用先前生成的offer调用setLocalDescription,然后尝试接受答案是否有效

我所做的可能不是最有效的方法,但对我来说最有效的方法是在会话失败时重新构建对等连接。当同伴离开时。最后,使用您的选项创建一个全新的对等连接,再次创建报价,在有报价时将其发送给对等方,然后再次处理答案。谢谢,我会考虑这一点。。。PS我发现您不能使用相同的SDP相同的报价来重新连接刷新页面的对等方。