GitHunt
QN

qnighy/axios-fetch

A WebAPI Fetch implementation backed by an Axios client

Axios-Fetch

Greenkeeper badge
Build Status
Coverage Status

This library exposes a Fetch WebAPI implementation backed by a Axios client
instance. This allows a bridge between projects that have pre-configured Axios
clients already to other libraries that require Fetch implementations.

One library that wants a Fetch implementation is the Apollo Link
HTTP
library. If your
project has an existing Axios client configured, then this project can help you
use that client in your apollo-link-http instance. Here is some sample code:

const { buildAxiosFetch } = require("@lifeomic/axios-fetch");
const { createHttpLink } = require("apollo-link-http");
const link = createHttpLink({
  uri: "/graphql"
  fetch: buildAxiosFetch(yourAxiosInstance)
});

Transforming requests

It is possible to transform requests before they reach your Axios client by providing
an optional argument to buildAxiosFetch. For example, if you wanted a fetch implementation
that always set the request timeout to 1 second, you could use code like:

const { buildAxiosFetch } = require("@lifeomic/axios-fetch");
const fetch = buildAxiosFetch(yourAxiosInstance, function (config) {
  config.timeout = 1000;
  return config;
});

Support for IE11

To Support IE11 add following dependencies

 npm install --save isomorphic-fetch
 npm install --save es6-promise

After adding these dependencies import in index.jsx file at top (Need to import before React)

import * as es6Promise from 'es6-promise';
import 'isomorphic-fetch';

es6Promise.polyfill(); // below all import end

Languages

TypeScript100.0%
MIT License
Created June 9, 2021
Updated November 30, 2025
qnighy/axios-fetch | GitHunt