私はnodejsウェブ(表現)アプリケーションだ誰か(UI)は私にGETリクエストを送信したとき、私は別の男にUDP要求を送信彼からの返信を期待して、udpサーバー(私の一部)が彼からの返信を受け取ったとき、私はhttpgetリクエストを送った人にhttpresponseとしてそれを送り返しました。nodejs +表現:UDP応答のHTTP要求を待機させる
- udp応答が受信されるまでhttprequestを待機させる方法はありますか。
- udpサーバーとhttpgetリクエストを取得したコントローラ/アクションメソッド間の通信を設定する方法。
私は 'setTimeOut'関数を試しましたが、要求はそれを待たずにいます。
私は私のコントローラ/アクションからこれのsendMessage呼び出しています:
module.exports.sendMessage = function (ip, port, message) {
var msg = new Buffer(message);
var dgram = require('dgram');
var client = dgram.createSocket('udp4');
client.send(msg, 0, msg.length, port, ip, function (err, bytes) {
if (err)
throw err;
console.log('UDP message sent to ' + ip + ':' + port);
client.close();
});
}
コントローラ/アクションコード:
router.get('/getSomething', function (req, res) {
//calls send message from here
}
UDPサーバコード時間アプリケーションからのすべての時間に実行されます開始しました:
server.on('message', function (message, remote) {
console.log(remote.address + ':' + remote.port + ' - ' + message + message.length);
}
ありがとうございました。
のようにそれを呼び出すことができますか?どのようにudp通話をしていますか? –
*コードを追加しました* – user1179299