request-capture-har

1.2.2 • Public • Published

request-capture-har

Wrapper for request module that saves all network traffic data as a HAR file.

Build Status NPM request-capture-har package

Compatibility

request >= 2.81.0 recommended, as it has much more detailed timings via timingPhases.

request >= v2.75.0 required, at a minimum.

Usage

// wrap around your request module
const RCH = require('request-capture-har');
const requestCaptureHar = new RCH(require('request'));
 
// ...
// `requestCaptureHar.request` is your `request` module's API.
// ...
requestCaptureHar.request(uri, options, callback);
 
// Save HAR file to disk
requestCaptureHar.saveHar(`network-waterfall_${new Date().toISOString()}.har`);
 
// You can also clear any collected traffic
requestCaptureHar.clearHar();

This repo is a fork of larsthorup's node-request-har-capture. Instead of monkey-patching request-promise, the API allows you to pass in the general request module. We also added better support for transfer timings.

image Above is a HAR captured by using request-capture-har from within npm to capture an npm install.

Background

This is especially useful for capturing all test traffic from your back-end test suite, for doing auto mocking in your front-end test suite. See this project for an example: https://github.com/larsthorup/http-auto-mock-demo. Blog post about this technique: http://www.zealake.com/2015/01/05/unit-test-your-service-integration-layer/

Dependencies (0)

    Dev Dependencies (1)

    Package Sidebar

    Install

    npm i request-capture-har

    Weekly Downloads

    2,448

    Version

    1.2.2

    License

    MIT

    Last publish

    Collaborators

    • paulirish