项目作者: feimao90

项目描述 :
Api request library based on Axios
高级语言: JavaScript
项目地址: git://github.com/feimao90/Axios-Api-Lib.git
创建时间: 2020-11-18T16:09:02Z
项目社区:https://github.com/feimao90/Axios-Api-Lib

开源协议:

下载


Axios Api Library

English | 简体中文

API request Library Based on Axios

Table of Contents

Install

  1. $ npm i axios-api-lib
  2. #or
  3. $ yarn add axios-api-lib

Usage

Basic

api.js

  1. import { request } from 'axios-api-lib'
  2. import user from './user'
  3. request.use('user', user)
  4. request.user.fetch()

user.js

  1. export default {
  2. fetch: 'http://example.com/users',
  3. }

Configure Axios

  1. import { http, request } from 'axios-api-lib'
  2. // [Global axios defaults](https://github.com/axios/axios#global-axios-defaults)
  3. http.defaults.baseURL = 'http://example.com'
  4. // Interceptors request response
  5. http.interceptors.request.use()
  6. http.interceptors.response.use()
  7. // Finally call request.setHttp method
  8. let req = request.setHttp(http)
  9. // set shake proof
  10. let req = req.setConfig({ shake: 1 })
  11. export { http, req }

Sample API Configuration

Configuration

  1. // user.js
  2. export default {
  3. // Get Request
  4. fetch: {
  5. url: 'users',
  6. method: 'get',
  7. }
  8. // Put Request and Dynamic URL
  9. update: {
  10. url: 'user/:id',
  11. method: 'put'
  12. }
  13. }

Invoking

  1. const [err, data] = await api.user.fetch({ params: { page: 1, pageSize: 30 } })
  2. const [err, data] = await api.user.update({ data: { id: 1, nickname: 'Tom' } })