ユーザーログイン時にMEANスタックアプリケーションのバックグラウンドでMongoDb更新クエリを実行するように、ソケットIOとExpress + Nodejを使用する方法。私はMongoDbプロセスが非ブロック的な方法で完了したことをユーザーに通知する必要があります。このクエリが完了するのを待たずにユーザーをリンク先ページにリダイレクトする必要があるため、コールバックを使用したくありません。そのため、ユーザーがログインしてから30秒後にこのMongoDbプロセスが完了すると、クエリの更新が完了したことを示すメッセージが点滅します。ノードJSプロセスが完了したときにソケットIOを使用してメッセージを送信する
私はソケットIOをセットアップしましたが、自分の状況に合わせて使用する方法がわかりません。
エクスプレス+ノードコードの下
io.on('connection', function(client) {
console.log('Client connected...');
client.on('complete', function(data) {
client.emit('messages', 'Hello from server');
});
});
は私AngularJsコードです。
var socket = io.connect('/socketTest');
socket.on('connect', function(data) {
socket.emit('complete', 'Mongo Process Done');
});
これらは私がウェブサイトからコピーされたと私はクライアント側でこのイベントをキャッチすることができるように、私は本当に何をすべきか理解していない例です。
どのように私はソケットが、他のファイルだけではなく、app.jsからインスタンス化することができるようにモジュール化しますか? –
更新された回答。 – aseferov
このエラーが発生しました:TypeError:io.connectは関数ではありません –