@plasmicapp/isomorphic-unfetch
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

Isomorphic Unfetch

Switches between unfetch & node-fetch for client & server.

Fork differences:

  1. On Node, node-fetch is always used instead of global.fetch. This is a workaround this undici bug which is negatively affecting many versions of Node and Next.js.
  2. Don't polyfill, leave global.fetch alone.
  3. Applies a patch on node-fetch-cjs to this node-fetch bug by following this PR. Then we inline node-fetch-cjs into the built version of server.js, so that it will contain our patched version of node-fetch-cjs.

Install

This project uses node and npm. Go check them out if you don't have them locally installed.

$ npm i isomorphic-unfetch

Then with a module bundler like rollup or webpack, use as you would anything else:

// using ES6 modules
import fetch from 'isomorphic-unfetch'

// using CommonJS modules
const fetch = require('isomorphic-unfetch')

Usage

As a ponyfill:

import fetch from 'isomorphic-unfetch';

fetch('/foo.json')
  .then( r => r.json() )
  .then( data => {
    console.log(data);
  });

Globally, as a polyfill:

import 'isomorphic-unfetch';

// "fetch" is now installed globally if it wasn't already available

fetch('/foo.json')
  .then( r => r.json() )
  .then( data => {
    console.log(data);
  });

License

MIT License © Jason Miller

Readme

Keywords

none

Package Sidebar

Install

npm i @plasmicapp/isomorphic-unfetch

Weekly Downloads

8,567

Version

1.0.3

License

MIT

Unpacked Size

249 kB

Total Files

6

Last publish

Collaborators

  • plasmicapp