v0.5.0
Add pre-request and post-response functionality hooks
Adds the ability to modify the request or response by creating a request handler function or response handler function.
type RequestHandler = (
url: string,
query: string,
init: RequestInit // this represents the second parameter passed to `fetch`
) => {url: string, query: string, init: RequestInit}
type ResponseHandler = (
status: number,
headers: Headers,
data: any
) => {status: number, headers: Headers, data: any}These hooks are added by the following function calls:
setRequestHandler: (requestHandler: RequestHandler) => void
setResponseHandler: (responseHandler: ResponseHandler) => voidAn example of it in action:
import {setRequestHandler, setResponseHandler} from '/location-of-routes'
setRequestHandler((url, query, init) => {
if (init.method === 'put') {
init.method = 'patch'
}
return {url, query, init}
})
setResponseHandler((status, headers, data) => {
if (status === 404) {
window.location.href = '/adorable-404-page'
}
return {status, headers, data}
})