axios-client-api
TypeScript icon, indicating that this package has built-in type declarations

1.0.2 • Public • Published

axios-client-api

HTTP client powered by axios.

Installation

npm i axios-client-api

yarn add axios-client-api

Quick start

  • Create resource module in your utils folder

    // utils/apiBuilder.ts
    import { ApiRequestBuilder } from 'axios-client-api'
    
    const apiRequestBuilder = new ApiRequestBuilder({
      baseURL: 'http://localhost:3000'
    })
    
    // Set authorization    
    apiRequestBuilder.axiosInstance.interceptors.request.use((config) => {
     const token = localStorage.getItem('accessToken')
     config.headers['Authorization'] = token ? `Bearer ${token}` : ''
     return config
    })  
  • Using api builder

    // api/login.js
    import { apiRequestBuilder } from 'utils/apiBuilder'
    
    const loginResource = apiRequestBuilder.setUrl('/login')
    
    const { data } = await loginResource.create({ data: {'username': 'admin', 'password': 'admin'} })
    // sends POST http://localhost:3000/login with body {'username': 'admin', 'password': 'admin'}
    
    const getUsers = apiRequestBuilder.setUrl('/users')
    const { data } = await getUsers.get()
    // sends GET http://localhost:3000/users

Readme

Keywords

Package Sidebar

Install

npm i axios-client-api

Weekly Downloads

0

Version

1.0.2

License

ISC

Unpacked Size

5.53 kB

Total Files

6

Last publish

Collaborators

  • sokhay