Api request library based on Axios
English | 简体中文
API request Library Based on Axios
$ npm i axios-api-lib
#or
$ yarn add axios-api-lib
api.js
import { request } from 'axios-api-lib'
import user from './user'
request.use('user', user)
request.user.fetch()
user.js
export default {
fetch: 'http://example.com/users',
}
import { http, request } from 'axios-api-lib'
// [Global axios defaults](https://github.com/axios/axios#global-axios-defaults)
http.defaults.baseURL = 'http://example.com'
// Interceptors request response
http.interceptors.request.use()
http.interceptors.response.use()
// Finally call request.setHttp method
let req = request.setHttp(http)
// set shake proof
let req = req.setConfig({ shake: 1 })
export { http, req }
Configuration
// user.js
export default {
// Get Request
fetch: {
url: 'users',
method: 'get',
}
// Put Request and Dynamic URL
update: {
url: 'user/:id',
method: 'put'
}
}
Invoking
const [err, data] = await api.user.fetch({ params: { page: 1, pageSize: 30 } })
const [err, data] = await api.user.update({ data: { id: 1, nickname: 'Tom' } })