got-fetch
A fetch
-compatible wrapper around got for those times when you need to
fetch stuff over HTTP 😉
Why would you use this instead of got? Sometimes you might need a fetch
wrapper and this is it (e.g. Apollo uses fetch
to query remote schemas).
Before you install
If you're using on NodeJS v18 or greater than you should be using its global fetch. It's better integrated, better supported and has more features.
Native fetch
Install
Support table:
got-fetch version | works with got version | Notes |
---|
^5.0.0 | ^12.0.0 | ESM package. You have to use import |
^4.0.0 | ^11.0.0 | CJS package. You can use require |
got
is a peer dependency so you will need to install it alongside got-fetch
:
npm install --save got got-fetch
For CommonJS support, we maintain v4 of this package.
Usage
Use the default export:
import fetch from 'got-fetch';
const resp = await fetch('https://example.com');
console.log(resp.status);
console.log(await resp.text());
The module also exports a function which allows you to use your own custom
got
instance:
import got from 'got';
import { createFetch } from 'got-fetch';
const myGot = got.extend({
headers: {
'x-api-key': 'foo bar'
}
});
const fetch = createFetch(myGot);
fetch('https://example.com');
Limitations
fetch
is designed for browser environments and this package is just a wrapper
around a Node-based HTTP client. Not all fetch
features are supported:
License
See LICENSE for information.