设置peerJS服务器结合快递

时间:2014-11-03 10:39:32

标签: node.js express peerjs

我正在尝试按照https://github.com/peers/peerjs-server#combining-with-existing-express-app

上的自述文件设置我自己的peerJS服务器

我在服务器上的代码

port = process.env.PORT or 8080
http = require 'http'
express = require 'express'
app = express()
server = http.createServer app
app.use '/peerjs', ExpressPeerServer server, debug : on
server.listen port
server.listen 9000

我的客户端代码

peer = new Peer
    host : 'localhost'
    port : 9000
    secure : no
    config :
        iceServers : [ url : 'stun:stun.l.google.com:19302' ]

我在客户端控制台上收到此错误

GET http://localhost:9000/peerjs/peerjs/id?ts=14150106969530.4679094860330224 net::ERR_CONNECTION_REFUSED

2 个答案:

答案 0 :(得分:2)

如果您仍在寻找建立自己的对等服务器的方法,那么我就是为了让它适合我而做的。

<强> server.js

// initialize express
var express = require('express');
var app = express();
// create express peer server
var ExpressPeerServer = require('peer').ExpressPeerServer;

var options = {
    debug: true
}

// create a http server instance to listen to request
var server = require('http').createServer(app);

// peerjs is the path that the peerjs server will be connected to.
app.use('/peerjs', ExpressPeerServer(server, options));
// Now listen to your ip and port.
server.listen(8878, "192.168.1.14");

客户端代码

我想,你不应该在这方面遇到太多问题,但是如果你想知道为某些参数添加什么,那么这里是对等对象的初始化:

var peer = new Peer({
    host: '192.168.1.14',
    port: 8878,
    path: '/peerjs',
    config: { 'iceServers': [
    { url: 'stun:stun01.sipphone.com' },
    { url: 'stun:stun.ekiga.net' },
{ url: 'stun:stunserver.org' },
{ url: 'stun:stun.softjoys.com' },
{ url: 'stun:stun.voiparound.com' },
{ url: 'stun:stun.voipbuster.com' },
{ url: 'stun:stun.voipstunt.com' },
{ url: 'stun:stun.voxgratia.org' },
{ url: 'stun:stun.xten.com' },
{
    url: 'turn:192.158.29.39:3478?transport=udp',
    credential: 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
    username: '28224511:1379330808'
},
{
    url: 'turn:192.158.29.39:3478?transport=tcp',
    credential: 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
    username: '28224511:1379330808'
    }
  ]
   },

debug: 3
});

这可以帮助您建立连接。

答案 1 :(得分:0)

必须在客户端设置服务器路径,如下所示:

var peer = new Peer('your_peer_id', {host: 'localhost', port: 9000, path: '/peerjs'});

(此路径必须与您ExpressPeerServer的路由路径相同)