Я использую библиотеку mikeal/request для доступа к WebAPI. Я хотел бы войти в консоль времени выполнения каждого запроса.node.js + mikeal/request - как измерить время запроса?
У меня есть несколько и вложенные запросы, так что я не хочу, чтобы положить в каждую одну: var start = Date.now(); ... var time = Date.now() - start; console.log('Finished in '+time+' ms');
Я желаю была возможность сделать что-то вроде этого: requestWithDefaults = request.defaults({ ... startTime: null }); requestWithDefaults.on('request.prepare', function() { startTime = Date.now(); }); requestWithDefaults.on('request.finished', function() { var time = Date.now() - startTime; console.log('Finished in '+time+' ms'); });
Но я не знаю, как зацепиться за эти моменты. Это как-то возможно в простой форме?
Благодарим за быстрый ответ. console.time/timeEnd - довольно интересное решение (я этого не знал), но главной проблемой для меня является то, как подключиться в эти моменты подготовки запроса и его завершения. События request.prepare и request.finished являются гипотетическими и имеют мое желание. Я не знаю, как с ними справиться. – Rympau
@Rympau Я просмотрел исходный код модуля запроса, и похоже, что для запроса на запуск или конечного запроса нет реальных хороших крючков событий (кроме конечного события, если нет обратного вызова). Поэтому, если бы это был я, я бы написал действительно тонкий модуль, чтобы обернуть модуль запроса и самостоятельно выпустить эти события, а затем убедиться, что все взаимодействие с модулем запроса проходит через этот модуль обертки. – jasonmerino
Благодарим вас за проверку запроса и идеи. Я постараюсь написать тонкий модуль, но из-за того, что у меня нет знаний, я буду благодарен за любой намек. – Rympau