在线网页游戏框架(2)——开个房间

A. webRTC

webRTC是Web Real-Time Communication的缩写支持浏览器进行实时语音对话或视频对话。可以参考[百度百科]的介绍。(https://baike.baidu.com/item/WebRTC/5522744)

B. peerjs

peerjs 是一个对webRTC API的封装,提供简单可配的连接设置,具体可参考其官网。简单介绍一下其使用步骤。webRTC 借助中介服务器,仅需要一个用户标识,即可使两个端(peer)建立起专有连接(后续通信不再需要经过服务器)。

B.1 脚本安装

官网上介绍了最方便的脚本获取方式,通过CDN。



大家也可以根据官网给的下载链接直接下载脚本文件。

B.2 创建一个端

当没有指定连接参数时,其默认使用的是该库提供的中介服务器。

// 节点对象创建
var peer = new Peer(); 


// 连接发起方(client)
var conn = peer.connect('another-peers-id');
// on open will be launch when you successfully connect to PeerServer
conn.on('open', function(){
  // here you have conn.id
  conn.send('hi!');
});

// 连接接收方(host)
peer.on('connection', function(conn) {
  conn.on('data', function(data){
    // Will print 'hi!'
    console.log(data);
  });
});

C. 示例工程 helloworld

C.1 新建页面,引入脚本



    



    
    



  • 页面有一个当与中介服务器连接建立后,更新为自身的id;
  • 一个