0.4.0 • Published 2 years ago

@otools/request v0.4.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Request

http request for browser based on window.fetch

Install

npm install @otools/request

Usage

import Request from "@otools/request";

const request = new Request({
  baseURL: "https://example.com",
});

request.get("/posts/{id}", {
  params: { id: 1 },
});
request.post("/posts", {
  body: { content: "content" },
});
request.put("/posts/{id}", {
  params: { id: 1 },
  body: { content: "content" },
});
request.patch("/posts/{id}", {
  params: { id: 1 },
  body: { content: "content" },
});
request.del("/posts/{id}", {
  params: { id: 1 },
});

API

Base API

  • new Request(options?)

    • options.baseURL: optional, base url for each request
    • options.headers: optional,default headers
    • options.beforeRequest: optional,hook will be called before send request, see below
    • options.afterRequest: optional,hook will be called after receive response, see below
  • request.get(url, Req): send http request use GET

  • request.post(url, Req): send http request use POST
  • request.put(url, Req): send http request use PUT
  • request.patch(url, Req): send http request use PATCH
  • request.del(url, Req): send http request use DELETE

beforeRequest

  • type: (req: Req) => Promise<Req>

afterRequest

  • type: (res: Res) => Promise<Res>

Req

request config

  • body: request body
  • headers: request headers
  • query: request query params
  • params: request path params

Res

original fetch response, but with res.data, which is serialized from res.body based on Content-Type

0.4.0

2 years ago

0.3.0

2 years ago

0.2.0

3 years ago

0.1.0

3 years ago

0.0.1

3 years ago