3

我正在尝试对 peerjs 进行非常简单的一页测试,因为我正在学习它。

但是,下面的代码似乎不起作用。我已经检查了三遍文件。但是在我的代码中找不到任何错误,输出也没有错误。

为了我的灵感,我使用了这个:http ://cdn.peerjs.com/demo/helloworld.html

我的代码

var p1 = new Peer('a351TxFJLKnljhl22',{key: 'key'});
var p2 = new Peer('a351TxFJLKnljhl22',{key: 'key'});

p1.on('open', function(id) {

    console.log('connected to server');
    var c = p1.connect('a351TxFJLKnljhl22');
        c.on('open', function(data) {    
            console.log('connected to peer');
            c.send('connection working');
        });    
});

p2.on('connection', function(connection) {
      connection.on('data', function(data) {
          console.log('p2 speaking..got from p1: '+data);
      });
});

我希望连接在控制台中工作。

4

1 回答 1

1

根据 API:

var peer = new Peer([id], [options]);

您将需要两个不同的 id,如下所示:

var p1 = new Peer('a351TxFJLKnljhl22',{key: 'key'});
var p2 = new Peer('asdf345wef234fgwe',{key: 'key'});

你的 P1 代码对我来说很合适。您的 P2 代码需要在连接后检查“打开”,因为您可能希望在某个阶段以另一种方式发回数据。

p2.on('connection', function(connection) {
      connection.on('open', function(data) {
          console.log('p2 open');
          connection.on('data', function(data) {
               console.log('p2 speaking..got from p1: '+data);
               // may wish to use connection.send() here
          });
      }); 
});

对于仅使用 1 个连接来执行相同操作的稍微不同的方法,请查看本教程:http ://blog.parkbenchgames.com/2014/12/16/how-to-use-peerjs/

于 2014-12-16T13:45:55.017 回答