2017-08-28 197 views
0

我需要在WebRTC APP中提供一些保护,我需要停止接收大量数据包的客户端,例如2kb。如何限制在WebRTC数据通道中收到的数据量

如果有人给我发送大于2kb的数据并删除邮件,我需要这样说。有没有设置的地方我可以限制收到的数据。或者我可以在下载时拦截数据,然后停止下载部分。

Iv一直在四处搜索,但无法找到任何有关此信息。

+0

据我所知,没有,有没有,但我也很愿意是错误的。 – dandavis

回答

0

根据Mozilla基金会WebRTC网站描述Using WebRTC data channels没有。

WebRTC数据通道支持出站数据的缓冲。这是自动处理的。虽然无法控制缓冲区的大小,但您可以了解当前有多少数据被缓冲,并且您可以选择在缓冲区开始对排队数据运行低时发生事件通知。这样可以轻松编写高效的例程,以确保始终可以发送数据,而无需过度使用内存或完全淹没通道。

但是,如果你的目的是要利用收到一个触发数据,您可以使用RTCDataChannel.bufferedAmount
这将返回当前排队等待通过数据通道发送的数据的字节数。更多详情here

获取该值并根据需要构建限制或停止下载的逻辑。

语法

var amount = aDataChannel.bufferedAmount; 
相关问题