0

获取 id 未定义的错误。如果我使用0.peerjs.com它就可以了。这是客户端代码:

var peer = new Peer({
        host: 'vchat247.hopto.org',
        port: 9000,
        path: '/peer/',
        debug: 3,
        config: {
            'iceServers': [
                {url: 'stun:stun1.l.google.com:19302'},
                {
                    url: 'turn:numb.viagenie.ca',
                    credential: 'muazkh', username: 'webrtc@live.com'
                }
            ]
        }
    });

这是我自己的peer-server代码:

var fs = require('fs');
var PeerServer = require('peer').PeerServer;

var server = PeerServer({
    port: 9000,
    path: '/peer/',
    ssl: {
        key: fs.readFileSync('./myserver.key'),
        certificate: fs.readFileSync('./vchat247.hopto.org.crt')
    }
});

这就是我得到的: 在此处输入图像描述

我究竟做错了什么?

如果我使用这段代码:

function randomString(length, chars) {
        var result = '';
        for (var i = length; i > 0; --i) result += chars[Math.floor(Math.random() * chars.length)];
        return result;
    }
   var peer = new Peer(randomString(16, '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'), {host: 'vchat247.hopto.org', port: 9000, path: '/peer/'});

显然,我得到了一个 id,但过了一会儿,这是浏览器控制台的结果:在此处输入图像描述 在此先感谢 :)

4

1 回答 1

0

我注意到您正在发送一个wss请求,这将需要proxy pass通过 ajax 或 nginx 进行编辑才能使其正常工作,因为它是一个安全协议,您在这样做吗?此外,您如何启动 peer.js 服务器?它是否托管在同一个盒子上,您是手动启动它(即node server.js:)还是您使用 init.d 或 upstart 创建了某种服务?

此外,我相信这个:certificate: fs.readFileSync('./vchat247.hopto.org.crt')应该是这个cert: fs.readFileSync('./vchat247.hopto.org.crt')(尽管它可能两者都接受)

查看此参考资料以帮助设置代理通行证-

于 2016-09-14T22:03:11.017 回答