@mutant-ws/fetch-browser
v1.4.0
Published
Thin wrapper over `window.fetch`
Downloads
2
Readme
fetch-browser
Thin wrapper over window.fetch
. Sister library of @mutant-ws/fetch-node
.
Install
npm i @mutant-ws/fetch-browser
Initialize
import { set } from "@mutant-ws/fetch-browser"
set({
// Throws if not set and using relative paths
baseURL: "http://localhost",
})
Default headers
import { set } from "@mutant-ws/fetch-browser"
set({
// Persistent headers
headers: {
// Library defaults
"accept": "application/json",
"content-type": "application/json",
// Set JWT for authorized requests
authorization: "signed-payload-with-base64-over",
},
})
Query string parameters
There is no built-in way to handle query params but you can set a custom transform function.
import { set } from "@mutant-ws/fetch-browser"
import { stringify } from "qs"
set({
// Throws if query params passed and no stringify function defined
queryStringifyFn: source =>
stringify(source, {
allowDots: true,
encode: false,
arrayFormat: "brackets",
strictNullHandling: true,
})
})
GET
import { GET } from "@mutant-ws/fetch-browser"
const myIP = await GET("https://api.ipify.org", {
query: {
format: "json"
}
})
// => {"ip":"213.127.80.141"}
PATCH
POST
DELETE
MULTIPART
Changelog
See the releases section for details.