@taropui/request
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

Taro.requst 简单封装

安装

npm add @taropui/request

使用

直接使用

import request from '@taropui/request';

request({ url: 'https://api.example.com/user', method: 'POST', data: { user: 1 } })
// or
request.post('https://api.example.com/user', { data })

创建新的实例

import { createRequest } from '@taropui/request';

const request = createRequest({
  baseURL: 'https://api.example.com',
  header: {
    'content-type': 'application/json',
    'appName': 'myApp',
    'token': Taro.getStorageSync('token') || '',
  }
});

request({ url: '/path/a', method: 'POST', data: { user: 1 } })
request.post('/path/a', { data })

添加拦截器

// 请求前拦截
request.interceptors.request.use((config) => {
  config.header.timestamp = Date.now()
  config.header.token = getToken(); // 如果 getToken是耗时的, 建议用 request.setConfig({ header }) 设置一次
  return config;
})


// 响应拦截
request.interceptors.response.use((response, config) => {
  if (response.statusCode === 200) {
    // 正常返回
    return response.data;
  } else if (response.statusCode === 401) {
    // 权限处理
  } else if (response.statusCode === 500) {
    // 服务端错误
  }
})

Readme

Keywords

Package Sidebar

Install

npm i @taropui/request

Weekly Downloads

0

Version

1.1.0

License

ISC

Unpacked Size

10.3 kB

Total Files

5

Last publish

Collaborators

  • yijinc