0
私はuWebSocketsサーバを持っています。これは、socket.ioサーバよりはるかにパフォーマンスが優れているようです。 私はサーバーとそれがうまく接続されているといくつかのトラブルの後、私は接続するindex.htmlクライアント側を持っていますが、今私はクライアント側からサーバーにイベントをプッシュすることができません。私は間違って何をしていますか?uWebSockets - サーバにイベントをプッシュ
var WebSocketServer = require('uws').Server,
express = require('express'),
path = require('path'),
app = express(),
server = require('http').createServer(),
createEngine = require('node-twig').createEngine;
var wss = new WebSocketServer({server: server});
wss.on('connection', function (ws) {
ws.on('join', function (value) {
console.log('SOMEONE JUST JOINED');
});
ws.on('close', function() {
//console.log('stopping client interval');
clearInterval(id);
});
});
server.on('request', app);
server.listen(8080, function() {
console.log('Listening on http://localhost:8080');
});
あなたが受信したメッセージに反応しないサーバー側のイベントリスナのセットアップを持っていない
<script>
var host = window.document.location.host.replace(/:.*/, '');
var server = new WebSocket('ws://' + host + ':8080');
server.onmessage = function (event) {
updateStats(JSON.parse(event.data));
};
server.onopen = function (event) {
server.send("Here's some text that the server is urgently awaiting!");
server.send('join');
};
function something() {
console.log('WORKED');
server.send('join');
}
</script>
こんにちは。 私は持っていました ws.on( 'join'、function(value){ console.log( 'SOMEONE JUST JOINED'); }); は、サーバーにデータを送信するグローバルな方法(「メッセージ」)になっていますか? 私はsocket.ioの経験から、サーバーまたはクライアントのコードでは (サーバーまたはクライアント側)socket.on( 'handler_name'、cb)0と (サーバーまたはクライアント側)socket.emit( 'ハンドラ名、データ); – TheMan68
大変ありがとうございます。 – TheMan68
websocketは接続のため以外のグループやセッションの概念ではないので、 'join'はありません。 uwsはwebsocketインターフェイスを直接公開し、socket.ioのような高レベルのフレームワークAPIは公開しません。したがって、それらは直接比較可能ではなく、同じAPIを利用することはありません。 uws APIの仕組みを調べる必要があります。 Afaikはnode.js 'ws'モジュールのAPIと同じものです。 – Matthias247