Express と Nodejs の内部構造をもっと理解しようとしています。express のファイルを見ると、プロトタイプのように見える にresponse.js
いくつかのメソッドを頻繁に割り当てています。res
具体的にres
は、 として宣言されていres = http.ServerResponse.prototype
ます。
わかりました、それで何http
ですか?http
として宣言されていhttp = require('http')
ます。
Express'http.js
ファイルを見ると、exports = module.exports = HTTPServer;
そして、HTTPServer
この方法のようです:
function HTTPServer(middleware){
connect.HTTPServer.call(this, []);
this.init(middleware);
};
そして、これは私が立ち往生するところです。私の論理によればServerResponse
、メソッドで呼び出されているように見えHTTPServer
ますが、もちろん意味がありません。したがって、私は何かが欠けているに違いありません。
アップデート:
Express が HTTPServer のインスタンスを作成することに気付きました。
exports.createServer = function(options){
if ('object' == typeof options) {
return new HTTPSServer(options, Array.prototype.slice.call(arguments, 1));
} else {
return new HTTPServer(Array.prototype.slice.call(arguments));
}
};
それで、ServerResponse
実際にそのインスタンスで呼び出されているのは事実だと思いますか? しかし、私はまだ見つけることができませんServerResponse
...