2

我最近尝试使用 Webrtc 实现 p2p 文件传输,方法是将大文件拆分为数组缓冲区,然后通过数据通道发送它们。该代码在一个月前可以工作,但现在它突然向我抛出了这个错误。

Uncaught RTCError: Failure to send data 
Uncaught Error: The error you provided does not contain a stack trace.

这是发送文件的代码片段。

    function sendFile() {
    const peer = peerRef.current;
    const stream = file.stream();
    const reader = stream.getReader();

    reader.read().then(obj => {
        handlereading(obj.done, obj.value);
    });

    function handlereading(done, value) {
        if (done) {
            console.log("done");
            peer.write(JSON.stringify({ done: true, fileName: file.name }));
            return;
        }

        peer.write(value);
        reader.read().then(obj => {
            handlereading(obj.done, obj.value);
            console.log("yolo");
        })
    }

}

该代码在其他浏览器(如 firefox 或移动三星浏览器)上运行良好。

您还可以在此处查看我的主要存储库此处的实时应用程序(重现错误)

4

0 回答 0