Utilizzando la nodejs request
libreria: https://github.com/mikeal/requestnodejs biblioteca richiesta, ottenere il tempo di risposta
var request = require('request');
request('http://example.com', function (error, response, body) {
...
})
E 'possibile ottenere il tempo di risposta sul richiamata? Il documento menziona response.statusCode. guardando il codice sorgente della libreria vedo anche response.headers e response.href non documentati, ma non vedo responseTime o simili.
oppure esiste una libreria alternativa a request
che fornisce il tempo di risposta?
ps: so che potrei fare qualcosa di simile, ma non è una soluzione, visto che sto facendo molte richieste asincrone e non posso controllare quando ogni richiesta verrà avviata.
var request = require('request');
var start = new Date();
request('http://example.com', function (error, response, body) {
...
var responseTime = new Date() - start;
})
Consiglierei di utilizzare http://nodejs.org/api/process.html#process_process_hrtime anziché Data. Lo uso per http://arrowbreaker.com/demos/sup e fornisce risultati piuttosto accurati. – Pickels
@Pickels non ne aveva sentito parlare. Non voglio introdurre le complicazioni nell'affrontare quell'array '[secondi, ns]' nel mio esempio, ma sembra una buona idea. –
Non è complicato affatto! 'var start = process.hrtime();' e 'res.responseTime = parseInt (process.hrtime (start) [1]/10000000, 10);' Okay, ho mentito. – Pickels