暂无描述

Georgi Jhangiryan 96fd0d0e2b fixed ws issue 1256 6 年之前
bin 3c96df6af0 Fix path reference 10 年之前
lib 96fd0d0e2b fixed ws issue 1256 6 年之前
test e89da8000e Fix test spacing 10 年之前
.gitignore 9c789f96b5 Updated dependencies. 6 年之前
.travis.yml c87f6346d9 travis nodejs version 6 年之前
Dockerfile 0eb8e47acf dockerfile for zeit now 6 年之前
LICENSE b8dbd1f249 license and updated package json 12 年之前
README.md b8443040d1 Update README.md 6 年之前
app.json bd101ab44f enable "Deploy to Heroku" Button 10 年之前
changelog.md 7335327b44 0.2.6 11 年之前
package.json cd058d056c update ws version 6 年之前
yarn.lock cd058d056c update ws version 6 年之前

README.md

Build Status

PeerServer: A server for PeerJS

PeerServer helps broker connections between PeerJS clients. Data is not proxied through the server.

http://peerjs.com

Run PeerServer

Install the library:

$> npm install peer

Run the server:

$> peerjs --port 9000 --key peerjs

Or, create a custom server:

var PeerServer = require('peer').PeerServer;
var server = PeerServer({port: 9000, path: '/myapp'});

Connecting to the server from PeerJS:

<script>
    // No API key required when not using cloud server
    var peer = new Peer('someid', {host: 'localhost', port: 9000, path: '/myapp'});
</script>

Using HTTPS: Simply pass in PEM-encoded certificate and key.

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

var server = PeerServer({
  port: 9000,
  ssl: {
    key: fs.readFileSync('/path/to/your/ssl/key/here.key'),
    cert: fs.readFileSync('/path/to/your/ssl/certificate/here.crt')
  }
});

Running PeerServer behind a reverse proxy

Make sure to set the proxied option, otherwise IP based limiting will fail. The option is passed verbatim to the expressjs trust proxy setting if it is truthy.

var PeerServer = require('peer').PeerServer;
var server = PeerServer({port: 9000, path: '/myapp', proxied: true});

Combining with existing express app

var express = require('express');
var app = express();
var ExpressPeerServer = require('peer').ExpressPeerServer;

app.get('/', function(req, res, next) { res.send('Hello world!'); });

// =======

var server = app.listen(9000);

var options = {
    debug: true
}

var peerserver = ExpressPeerServer(server, options);

app.use('/api', peerserver);

// == OR ==

var server = require('http').createServer(app);
var peerserver = ExpressPeerServer(server, options);

app.use('/peerjs', peerserver);

server.listen(9000);

// ========

Events

The 'connection' event is emitted when a peer connects to the server.

peerserver.on('connection', function(id) { ... });

The 'disconnect' event is emitted when a peer disconnects from the server or when the peer can no longer be reached.

peerserver.on('disconnect', function(id) { ... });

Problems?

Discuss PeerJS on our Google Group: https://groups.google.com/forum/?fromgroups#!forum/peerjs

Please post any bugs as a Github issue.