fetch-api
安装
npm install PackageName
使用
; const api = native: host: '' ; // 内置服务配置 ; // fetch请求 fetchAPI ; // fetch请求超时 fetchAPI ; fetchAPI ; // get、post请求 fetchAPI ; fetchAPI ; // 表单提交 const fd = ; fetchAPI form'your request url' fd
封装小技巧
import { FetchAPI } from 'za-fetch-api';
const myFetchAPI = new FetchAPI();
const originFetch = myFetchAPI.fetch;
myFetchAPI.fetch = (config) => {
config.url = `${config.url}?&channel=app`;
return originFetch.call(myFetchAPI, config);
}
myFetchAPI.fetch = function wrapFetch(config) {
const { headers } = config;
const { url, options } = this.getFetchConfig(config);
return fetchSign(url, options).then(sign => originFetch.call(fetchAPI, { ...config, headers: { ...headers, ...sign } }));
};
接口
-
默认fetchAPI实例
import fetchAPI from 'PackageName'
import { fetchAPI } from 'PackageName'
- fetchAPI.setCheckStatus
- fetchAPI.setParseResponse
- fetchAPI.setRetrieveCache
- fetchAPI.setCreateCache
- fetchAPI.setMiddlewares
- fetchAPI.setBefore
- fetchAPI.setAfter
- fetchAPI.fetch
- fetchAPI.timeout
- fetchAPI.get
- fetchAPI.post
- fetchAPI.form
-
内置服务配置 setServices
import { setServices } from 'PackageName'
-
内置服务地址 getURL
import { getURL } from 'PackageName'
-
类 FetchAPI
import { FetchAPI } from 'PackageName'
const fetchAPI =middlewares // 请求结果处理中间件,如统一错误处理、未登录提示等before // 请求前置回调,如开启loading效果after // 请求后置回调,如关闭loading效果;