0
現在Nodejsを学習しています。私は教科書のコードの一部に混乱しています。呼び出されるemit()メソッドがありません
var http = require('http');
var querystring = require('querystring');
var server = http.createServer().listen(8124);
server.on('request', function(request,response) {
if (request.method == 'POST') {
var body = '';
// append data chunk to body
request.on('data', function (data) {
body += data;
});
// data transmitted
request.on('end', function() {
var post = querystring.parse(body);
console.log(post);
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World\n');
});
}
});
console.log('server listening on 8214');
http.createServerは、EventEmitterから継承するhttp.Serverオブジェクトを返します。 EventEmitterにはonとemitメソッドが含まれていることを確認してください。この例では、onメソッドしか表示されず、emitメソッドを呼び出す場所が見つかりません。メソッド上でemitメソッドが呼び出されるか、イベントバインドがどのようにトリガされるか? emitメソッドは他のメソッドでカプセル化されていますか?
なぜあなたは 'emit'メソッドを呼びたいのですか? – robertklep
このコードの実際の問題は何ですか?サーバーオブジェクトを使用するには、 'emit'メソッドを呼び出す必要はありません。これは 'request'イベントを生成するために内部的に呼び出します。 – jfriend00
@ jfriend00 emitメソッドの内部呼び出しに関する詳細やドキュメントを提供できますか?それはどこに呼ばれますか? – pipi