axios async
时间: 2025-01-03 20:43:15 浏览: 5
### Axios 异步操作
在 JavaScript 中,`async` 和 `await` 关键字用于处理异步操作,使代码更加简洁易读。当函数前加上 `async` 关键字时,该函数总是返回一个 Promise;而 `await` 关键字则让 JavaScript 等待直到这个 Promise 完成并返回其结果[^1]。
对于 Axios 的异步调用,可以通过定义带有 `async` 的函数来简化流程:
```javascript
const fetchData = async () => {
try {
const response = await axios.get('http://example.com');
console.log(response.data);
} catch (error) {
console.error(error);
}
};
```
如果任何 Promise 在链中未被满足,则会自动跳转到已定义的 `catch()` 函数进行错误处理,即使存在多个异步操作也只需要一个 `catch()` 子句即可捕获所有可能发生的异常情况[^2]。
另外,在执行 GET 请求时可以直接利用 `.then()` 方法处理成功响应的数据,并通过 `.catch()` 来捕捉可能出现的问题:
```javascript
axios.get('http://example.com')
.then(function (response) {
console.log(response.data);
})
.catch(function (error) {
console.error(error);
});
```
需要注意的是,默认情况下 Axios 将 JavaScript 对象序列化为 JSON 格式发送给服务器端。若要以 `application/x-www-form-urlencoded` 形式的表单提交数据,则需采用特定配置方式[^4]:
```javascript
axios.post('/submit', qs.stringify({ 'foo': 'bar' }), {
headers: { 'content-type': 'application/x-www-form-urlencoded;charset=utf-8' }
})
.then((res) => {
console.log(res.data);
});
```
阅读全文