0.0.5 • Published 3 years ago

@mersocarlin/fetch v0.0.5

Weekly downloads
1
License
MIT
Repository
-
Last release
3 years ago

@mersocarlin/fetch

fetch wrapper on top of isomorphic-fetch.

Motivation

I needed a consistent fetch wrapper that always returns the same structure (body and statusCode) for all API calls throughout my projects.

Basic error handling was also a "must-have" and I ended up duplicating the same code in every new project/repository I was working on.

I've also written this code a long time ago but never had the chance to give it the attention it deservs + open source it.

It works seamless with @mersocarlin/mersocarlin/api-error so I get named API errors for free.

Install

yarn add @mersocarlin/fetch
npm i @mersocarlin/fetch

Usage

import fetch from '@mersocarlin/fetch'

const login = async (username: string, password: string) => {
  try {
    const { body, statusCode } = await fetch('https://example.com/api/signin', {
      body: {
        username,
        password,
      },
      method: 'post',
    })

    return body
  } catch(error) {
    throw error
  }
}

const fetchPrivateUsers = async () => {
  try {
    const { body, statusCode } = await fetch('https://example.com/api/users', {
      headers: {
        'Authorization': 'Bearer TOKEN',
      }
    })

    return body
  } catch(error) {
    throw error
  }
}

const fetchPublicUsers = async () => {
  try {
    const { body, statusCode } = await fetch('https://example.com/users')

    return body
  } catch(error) {
    throw error
  }
}
0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

4 years ago

0.0.1

4 years ago