A simple way to use fetch in web worker
npm i web-worker-fetch
First, you should create a wf object:
import WebWorkerFetch from 'web-worker-fetch';
const wf = new WebWorkerFetch();
After that, you can use wf.fetch
just like fetch
.
Notice, the
res
you get fromwf.fetch
has been disposed byres.text()
wf.fetch('url', {
method: 'POST', // *GET, POST, PUT, DELETE, etc.
mode: 'cors', // no-cors, *cors, same-origin
cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
credentials: 'same-origin', // include, *same-origin, omit
headers: {
'Content-Type': 'application/json'
// 'Content-Type': 'application/x-www-form-urlencoded',
},
redirect: 'follow', // manual, *follow, error
referrerPolicy: 'no-referrer', // no-referrer, *no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url
body: JSON.stringify(data) // body data type must match "Content-Type" header
}).then(res => console.log(res))
Borrowing ideas from Axios, web-worker-fetch provides requestInterceptor
and responseInterceptor
API
requestInterceptor: (option: Object):Object
Get originaloption
prop and return the true option for requestresponseInterceptor: (res:any):any
Get original response data and return true data you get fromwf.fetch