Socket
Socket
Sign inDemoInstall

fetch-har

Package Overview
Dependencies
2
Maintainers
11
Versions
41
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    fetch-har

Make a fetch request from a HAR definition


Version published
Weekly downloads
63K
decreased by-4.67%
Maintainers
11
Install size
111 kB
Created
Weekly downloads
 

Readme

Source

fetch-har

Make a fetch request from a HAR definition.

CI License

Features

Installation

npm install --save fetch-har

Usage

import fetchHAR from 'fetch-har';
// const fetchHAR = require('fetch-har');

const har = {
  log: {
    entries: [
      {
        request: {
          headers: [
            {
              name: 'Authorization',
              value: 'Bearer api-key',
            },
            {
              name: 'Content-Type',
              value: 'application/json',
            },
          ],
          queryString: [
            { name: 'a', value: 1 },
            { name: 'b', value: 2 },
          ],
          postData: {
            mimeType: 'application/json',
            text: '{"id":8,"category":{"id":6,"name":"name"},"name":"name"}',
          },
          method: 'POST',
          url: 'http://httpbin.org/post',
        },
      },
    ],
  },
};

fetchHAR(har)
  .then(res => res.json())
  .then(console.log);

API

Options
userAgent

A custom User-Agent header to apply to your request. Please note that browsers have their own handling for these headers in fetch() calls so it may not work everywhere; it will always be sent in Node however.

await fetchHAR(har, { userAgent: 'my-client/1.0' });
files

An optional object map you can supply to use for multipart/form-data file uploads in leu of relying on if the HAR you have has data URLs. It supports Node file buffers and the File API.

await fetchHAR(har, {
  files: {
    'owlbert.png': await fs.readFile('./owlbert.png'),
    'file.txt': document.querySelector('#some-file-input').files[0],
  },
});

If you don't supply this option fetch-har will fallback to the data URL present within the supplied HAR. If no files option is present, and no data URL (via param.value) is present in the HAR, a fatal exception will be thrown.

init

This optional argument lets you supply any option that's available to supply to the Request constructor.

await fetchHAR(har, {
  init: {
    headers: new Headers({
      'x-custom-header': 'buster',
    }),
  },
});

❗ Note that if you supply body or credentials to this option they may be overridden by what your HAR requires.

FAQs

Last updated on 08 Nov 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc