创建实例
要创建一个Axios实例,您可以使用axios.create()
方法。该方法接受一个可选的配置对象作为参数,并返回一个新的Axios实例。
// 创建一个Axios实例
var instance = axios.create({
baseURL: "https://api.example.com/",
timeout: 5000,
headers: {
"Content-Type": "application/json",
// 自定义请求头部
}
});
在上面的示例中,我们使用axios.create()
方法创建了一个新的Axios实例,并通过配置对象设置了一些选项,例如基本URL、超时时间和请求头部信息。
配置选项
通过创建实例,您可以为每个实例配置不同的选项。以下是一些常用的配置选项:
baseURL
:用于所有请求的基本URL。timeout
:请求超时时间。headers
:请求的头部信息。params
:要添加到URL的查询字符串参数。auth
:提供HTTP基本认证的用户名和密码。responseType
:期望的响应数据类型。validateStatus
:定义响应状态码的验证函数。transformRequest
:用于请求数据的转换函数。transformResponse
:用于响应数据的转换函数。
您可以根据项目需求配置这些选项,以满足特定的请求需求。
发送请求
创建实例后,您可以使用该实例发送请求。实例具有与全局的axios
对象相同的方法,例如get()
、post()
、put()
、delete()
等。以下是一个发送请求的示例:
instance.get("/data")
.then(function (response) {
console.log(response.data);
// 在这里处理返回的数据
})
.catch(function (error) {
console.log(error);
// 在这里处理请求错误
});
在上面的示例中,我们使用实例的get()
方法发送了一个GET请求,并处理成功的响应和请求错误。
实例配置的继承
创建的Axios实例将继承其创建时指定的配置选项。如果在实例级别上指定了某个配置选项,它将覆盖全局的默认配置。例如:
代码语言:javascript复制var instance = axios.create({
timeout: 5000,
headers: {
"Content-Type": "application/json"
}
});
// 将基本URL设置为https://api.example.com/
instance.defaults.baseURL = "https://api.example.com/";
在上面的示例中,我们创建了一个实例并指定了默认的超时时间和请求头部信息。然后,我们通过实例的defaults
属性将基本URL设置为https://api.example.com/
,这将覆盖全局的默认基本URL。