プログラムがリクエストの受信を停止し、ページを一度正常にロードした後にコードを続行したい。私はbreak;
を関数のコードの最後に置いてみましたが、それは違法な中断だと言います。私は休憩の代わりに何を使うべきか分かりません。Node.jsの関数を終了する方法
どのように機能を終了させるべきですか?
ありがとうございます。
私はNode.jsのとthis siteから次のコードを使用しています:あなたは(return
、ないbreak
だろう)機能を終了じゃない
var http = require("http");
var port = 3000;
var serverUrl = "localhost";
var Kafka = require('no-kafka');
var connString = ' kafka://192.168.0.108:9092, 192.168.0.108:9092 '
var consumer = new Kafka.SimpleConsumer({ connectionString: connString });
var message = ["start"];
var server = http.createServer(function(req, res) {
console.log("Request: " + req.url);
var now = new Date();
var html = "<p>Hello World, the time is " + now + "- Messages: " + message + ".</p>";
res.end(html);
console.log("a");
server.close();
console.log("b");
});
// data handler function can return a Promise
var dataHandler = function (messageSet, topic, partition) {
messageSet.forEach(function (m) {
console.log('topic received: ');
console.log({
'topic':topic,
'partition': partition,
'offset': m.offset,
'message': m.message.value.toString('utf8')
});
message.push(m.message.value.toString('utf8'));
console.log("Listening at " + serverUrl + ":" + port);
server.listen(port, serverUrl);
console.log("c");
});
};
return consumer.init()
.then(function() {
return consumer.subscribe('temp', 0, dataHandler);
});
server.close(); –
私は質問の再タイトル付けを検討したいと思います。 – Orangesandlemons
server.close();動作しません。私は正しいコードで質問に更新しました。それは "b"で立ち往生し、コンソールでCtrl-Cを押すと続けられます。 – Ryan