npm install faye
Faye bietet PubSub Funktionalität für Node.
Es nutzt WebSocket, XMLHttpRequest, CORS und JSON-P, in dieser Reihenfolge.
Server
Bayeux ist ein Protokoll zum transportieren von asynchronen Nachrichten über HTTP.
var express= require('express'),
faye = require('faye');
var bayeux = new faye.NodeAdapter({
mount: '/faye',
timeout: 30
});
var app = express.CreateServer();
app.configure(function () {
app.use(express.bodyParser());
app.use(express.static(__dirnmae + '/public'));
});
app.post('/message', function(req, res) {
bayeux.getClient().publish('/channel', {text: req.body.message});
res.send(200);
});
bayeux.attach(app);
app.listen(3000);
Client
Die JavaScript Datei wird von faye automatisch erstellt und muss nur eingebunden werden.
<script src="/faye.js"></script>
<div id="message"></div>
<script>
var client = new Faye.Client('/faye', {
timeout: 120
});
client.subscribe('/channel', function(message) {
document.getElementById('message').innerHTML = message.text;
}
</script>
Senden von Nachrichten
client.publish('/channel', {"text":"post message"});
curl -X POST -H "Content-Type:application/json" -d '{"message":"post message"}' http://localhost/message