小程序中使用axios

在使用uniapp 开发过程中发现axios在小程序中不支持。处理办法如下:

方法1:自定义适配器

axios.defaults.adapter = function(config) {
return new Promise((resolve, reject) => {
var settle = require('axios/lib/core/settle');
var buildURL = require('axios/lib/helpers/buildURL');
uni.request({
method: config.method.toUpperCase(),
url: config.baseURL + buildURL(config.url, config.params, config.paramsSerializer),
header: config.headers,
data: config.data,
dataType: config.dataType,
responseType: config.responseType,
sslVerify: config.sslVerify,
complete: function complete(response) {
// console.log("执行完成:", response)
response = {
data: response.data,
status: response.statusCode,
errMsg: response.errMsg,
header: response.header,
config: config
};
settle(resolve, reject, response);
}
})
})

方法2:使用axios-miniprogram-adapter适配器

import axios from ‘axios’
import mpAdapter from ‘axios-miniprogram-adapter’

axios.defaults.adapter = mpAdapter

注意,此方法axios需要0.26及一下版本。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注