README
Http Request
Only Support Browser based request.
Current Supporting Request Method: "GET", "POST", "PUT", "PATCH", "DELETE"
GET
import {create} from "weak-request";
create({
url: "http://api.plos.org/search",
method: "GET",
params: {
q: "title:DNA",
},
}).then((res) => console.log(res.data));
POST
import {create} from "weak-request";
create({
url: "http://example.com",
method: "POST",
data: {
q: "title:DNA",
s: {a: 1, b:2}
},
}).then((res) => console.log(res.data));
Interceptor
// weakRequest is store as global variable
// Or you can import the default export
// import weakRequest from "weak-request"
weakRequest.interceptors.request.add((req) => {
// TODO: Your Action
// Optional Return
return Promise.resolve(req);
});
weakRequest.interceptors.response.add((res) => {
// TODO: Your Action
// Optional Return
return Promise.resolve(res);
});
Cancellation
const cancel = new Cancellation();
const start = () => {
create({
url: "http://api.plos.org/search",
method: "GET",
params: {
q: "title:DNA",
},
data: {},
cancelToken: cancel,
}).then((res) => console.log(res.data));
};
start();
setTimeout(() => {
cancel.cancel("Operation canceled by the user");
}, 500);
Global Default Url And Headers
weakRequest.config = {
baseURL: "http://localhost",
headers: {
Authorization: "Bearer aaa.aaa.aaa"
}
}