README
@aspida/fetch
Getting Started
Installation
Make HTTP request from application
src/index.ts
import aspida, { HTTPError } from "@aspida/fetch"
import api from "../api/$api"
const fetchConfig = {
credentials: "include",
baseURL: "https://example.com/api",
throwHttpErrors: true // throw an error on 4xx/5xx, default is false
}
const client = api(aspida(fetch, fetchConfig))
;(async () => {
const userId = 0
const limit = 10
await client.v1.users.post({ name: "mario" })
const res = await client.v1.users.get({ query: { limit } })
console.log(res)
// req -> GET: https://example.com/api/v1/users/?limit=10
// res -> { status: 200, data: [{ id: 0, name: "mario" }], headers: {...} }
try {
const user = await client.v1.users._userId(userId).$get()
console.log(user)
// req -> GET: https://example.com/api/v1/users/0
// res -> { id: 0, name: "mario" }
} catch (e) {
if (e instanceof HTTPError) {
console.log(e.response instanceof Response) // true
} else {
console.log(e.message)
}
}
})()
License
@aspida/fetch is licensed under a MIT License.