pull/1/head
parent
9a690ad73a
commit
370256a0f8
11
README.md
11
README.md
|
@ -36,15 +36,15 @@ npm i axios-miniprogram
|
||||||
非全平台兼容的配置只会在平台支持的情况下生效。
|
非全平台兼容的配置只会在平台支持的情况下生效。
|
||||||
|
|
||||||
|参数|类型|默认值|说明|全平台兼容|
|
|参数|类型|默认值|说明|全平台兼容|
|
||||||
|:-|:-|:-|:-|:-|:-|
|
|:-|:-|:-|:-|:-|
|
||||||
|adapter|Function||自定义适配器|是|
|
|adapter|Function|[查看](https://github.com/early-autumn/axios-miniprogram/blob/master/src/helper/defaults.ts#L11)|自定义适配器|是|
|
||||||
|baseURL|String||基础地址|是|
|
|baseURL|String||基础地址|是|
|
||||||
|url|String||请求地址|是|
|
|url|String||请求地址|是|
|
||||||
|method|String|get|请求方法||
|
|method|String|get|请求方法||
|
||||||
|params|Object||请求参数|是|
|
|params|Object||请求参数|是|
|
||||||
|data|String/Object/ArrayBuffer||请求数据|是|
|
|data|String/Object/ArrayBuffer||请求数据|是|
|
||||||
|headers|Object|[查看](https://github.com/early-autumn/axios-miniprogram/blob/master/src/helper/defaults.ts#L11)|请求头|是|
|
|headers|Object|[查看](https://github.com/early-autumn/axios-miniprogram/blob/master/src/helper/defaults.ts#L13)|请求头|是|
|
||||||
|validateStatus|Function|[查看](https://github.com/early-autumn/axios-miniprogram/blob/master/src/helper/defaults.ts#L28)|自定义合法状态码|是|
|
|validateStatus|Function|[查看](https://github.com/early-autumn/axios-miniprogram/blob/master/src/helper/defaults.ts#L30)|自定义合法状态码|是|
|
||||||
|paramsSerializer|Function||自定义参数序列化|是|
|
|paramsSerializer|Function||自定义参数序列化|是|
|
||||||
|transformRequest|Function/Array<.Function>||自定义转换请求数据|是|
|
|transformRequest|Function/Array<.Function>||自定义转换请求数据|是|
|
||||||
|transformResponse|Function/Array<.Function>||自定义转换响应数据|是|
|
|transformResponse|Function/Array<.Function>||自定义转换响应数据|是|
|
||||||
|
@ -175,6 +175,9 @@ axios.defaults.adapter = function adapter(adapterConfig) {
|
||||||
fail
|
fail
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 如果 adapterConfig 的数据结构适用于当前平台,则可以。
|
||||||
|
axios.defaults.adapter = wx.request;
|
||||||
```
|
```
|
||||||
|
|
||||||
### `defaults`默认配置
|
### `defaults`默认配置
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "axios-miniprogram",
|
"name": "axios-miniprogram",
|
||||||
"version": "1.0.1",
|
"version": "1.0.2",
|
||||||
"description": "基于 Promise 的 HTTP 请求库,适用于各大小程序平台。",
|
"description": "基于 Promise 的 HTTP 请求库,适用于各大小程序平台。",
|
||||||
"main": "package/index.js",
|
"main": "package/index.js",
|
||||||
"miniprogram": "package",
|
"miniprogram": "package",
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: early-autumn
|
* @Author: early-autumn
|
||||||
* @Date: 2020-04-13 21:45:45
|
* @Date: 2020-04-13 21:45:45
|
||||||
* @LastEditors: early-autumn
|
* @LastEditors: early-autumn
|
||||||
* @LastEditTime: 2020-04-18 16:12:10
|
* @LastEditTime: 2020-04-18 23:56:50
|
||||||
*/
|
*/
|
||||||
import { AnyObject, Params } from '../types';
|
import { AnyObject, Params } from '../types';
|
||||||
import { isPlainObject, isDate } from './utils';
|
import { isPlainObject, isDate } from './utils';
|
||||||
|
@ -52,7 +52,7 @@ function joinURL(url: string, serializedParams: string): string {
|
||||||
*
|
*
|
||||||
* @param params 请求参数
|
* @param params 请求参数
|
||||||
*/
|
*/
|
||||||
function paramsSerializerDefault(params: AnyObject): string {
|
function paramsSerialization(params: AnyObject): string {
|
||||||
const parts: string[] = [];
|
const parts: string[] = [];
|
||||||
|
|
||||||
Object.entries(params).forEach(([key, value]): void => {
|
Object.entries(params).forEach(([key, value]): void => {
|
||||||
|
@ -87,24 +87,12 @@ function paramsSerializerDefault(params: AnyObject): string {
|
||||||
*
|
*
|
||||||
* @param url 请求地址
|
* @param url 请求地址
|
||||||
* @param params 请求参数
|
* @param params 请求参数
|
||||||
* @param paramsSerializer 自定义参数序列化
|
* @param paramsSerialized 自定义参数序列化
|
||||||
*/
|
*/
|
||||||
export default function buildURL(
|
export default function buildURL(url: string, params?: Params, paramsSerializer = paramsSerialization): string {
|
||||||
url: string,
|
|
||||||
params?: Params,
|
|
||||||
paramsSerializer?: (params: AnyObject) => string
|
|
||||||
): string {
|
|
||||||
if (params === undefined) {
|
if (params === undefined) {
|
||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
|
|
||||||
let serializedParams = '';
|
return joinURL(url, paramsSerializer(params));
|
||||||
|
|
||||||
if (paramsSerializer !== undefined) {
|
|
||||||
serializedParams = paramsSerializer(params);
|
|
||||||
} else {
|
|
||||||
serializedParams = paramsSerializerDefault(params);
|
|
||||||
}
|
|
||||||
|
|
||||||
return joinURL(url, serializedParams);
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,13 +2,10 @@
|
||||||
* @Author: early-autumn
|
* @Author: early-autumn
|
||||||
* @Date: 2020-04-14 23:22:52
|
* @Date: 2020-04-14 23:22:52
|
||||||
* @LastEditors: early-autumn
|
* @LastEditors: early-autumn
|
||||||
* @LastEditTime: 2020-04-18 15:17:50
|
* @LastEditTime: 2020-04-18 23:47:50
|
||||||
*/
|
*/
|
||||||
import axios from './axios';
|
import axios from './axios';
|
||||||
|
|
||||||
/**
|
|
||||||
* typescript 类型全部导出
|
|
||||||
*/
|
|
||||||
export * from './types';
|
export * from './types';
|
||||||
|
|
||||||
export default axios;
|
export default axios;
|
||||||
|
|
Loading…
Reference in New Issue