the-fetch

1.6.0 • Public • Published

the-fetch

Original Fetch API with some additional helpful feature

Feature

  • Global onError callback function
  • Global base URL
  • Request & Response Intecpetors

Browser Support

Sorry ~ Only support the modern browsers

Installation

npm i the-fetch --save

Quick Start

import fetch from 'the-fetch'
 
fetch.defaults.base = 'https://www.xxx.com/' // set base URL
 
/**
 * If not set the response will resolve to json like
 * `fetch('').then(res => res.json())`
 * so in the example below you will see you can get json data only resolve once
 * If you want to resolve the res in another format you can pass the resolver in options like
 * `fetch('', { resolver: 'text' })` will resolve as `res.text()`
 * 
 */
fetch.get('/getData').then(res => console.log(res))
// or
fetch('/getData').then(res => console.log(res))
 
fetch.post('/addData', data, init).then(res => console.log(res))
// or
fetch('/addData', {
  method: 'POST',
  body: data
}).then(res => console.log(res))

Interceptor

import fetch from 'the-fetch'
 
// Use request interceptor to change the initial config
fetch.interceptors.request.use(config => {
  // this config is the final config that will pass to fetch(url, config)
  config.extra = 'Hello'
  return config
}, err => {
  return Promise.reject(err)
})
 
// Use response interceptor to do some extra work when request finished
fetch.interceptors.response.use(response => {
  return response
}, err => {
  console.log(err.message)
  return Promise.reject(err)
})

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
1.6.01latest

Version History

VersionDownloads (Last 7 Days)Published
1.6.01
1.5.00
1.4.30
1.4.20
1.4.10
1.4.00
1.3.00
1.2.100
1.2.90
1.2.80
1.2.70
1.2.60
1.2.50
1.2.40
1.2.30
1.2.20
1.2.10
1.2.00
1.1.80
1.1.70
1.1.60
1.1.50
1.1.40
1.1.30
1.1.20
1.1.10
1.1.00
1.0.40
1.0.30
1.0.21
1.0.10
1.0.00

Package Sidebar

Install

npm i the-fetch

Weekly Downloads

2

Version

1.6.0

License

MIT

Unpacked Size

11.4 kB

Total Files

10

Last publish

Collaborators

  • minimalistying