npm.io
1.3.0 • Published 1 year ago

fetch-addons

Licence
MIT
Version
1.3.0
Deps
0
Size
10 kB
Vulns
0
Weekly
32.6K

Fetch Addons

A collection of addons for the fetch API.

Install

npm install fetch-addons

Usage

import * as addons from 'fetch-addons';
toCurl

Serializes a Request object to a cURL command. Handy for logging and replaying failed requests.

import { toCurl } from 'fetch-addons';

// fetch(input, init)
toCurl(input, init);
toCurl(request);

// curl --url 'https://example.com' \
//   --request 'POST' \
//   --header 'content-type: application/json' \
//   --data '{"foo":"bar"}'`
getRequest

Get a Request object from RequestInit.

import { getRequest } from 'fetch-addons';

// fetch(input, init);
const request = getRequest(input, init);
const request = getRequest(request);
getHeaders

Get a Headers object from HeadersInit.

import { getHeaders } from 'fetch-addons';

// fetch(input, init);
const headers = getHeaders(init.headers);

fetch('https://example.com').then((response) => {
	const headers = getHeaders(response.headers);
});
deleteEmptyHeaders

Delete empty headers from a Headers object.

import { deleteEmptyHeaders } from 'fetch-addons';

const request = new Request('https://example.com', {
	headers: {
		'content-type': 'application/json',
		'x-1': '',
		'x-2': 'undefined',
		'x-3': 'null',
	},
});

deleteEmptyHeaders(request.headers);
// Headers { 'content-type': 'application/json' }

Keywords