ノードからデータベースにクエリを実行するとき、非同期コールバックに対してHTTP応答オブジェクトをどのように渡しますか?例えば、(dBのものである擬似コードは):Node.jsのコールバックにHTTPレスポンスを渡すには?
var http = require('http');
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
// read from database:
var dbClient = createClient(myCredentials);
var myQuery = 'my query goes here';
dbClient.query(myQuery, callback);
function callback(error, results, response) // Pass 'response' to the callback?
{
if (error === null) {
for (var index in results) response.write(index); // Error
response.end('End of data');
}
else {
response.end('Error querying database.')
}
}
}).listen(1337, "127.0.0.1");
コールバックにresponse
を渡し、ノードが結果継続オブジェクトがメソッドwrite
を有していないというエラーを返します。
ここで最適な戦略は何ですか?