axios的基本使用

axios 是一个功能强大且易于使用的 HTTP 客户端库,提供了丰富的功能和配置选项。以下是 axios 的完整使用示例:

发送 GET 请求:

javascript 复制代码
axios.get('https://jsonplaceholder.typicode.com/posts')
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });

发送 POST 请求:

javascript 复制代码
axios.post('https://jsonplaceholder.typicode.com/posts', {
    title: 'foo',
    body: 'bar',
    userId: 1
  })
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });

设置请求头:

javascript 复制代码
axios.get('https://jsonplaceholder.typicode.com/posts', {
    headers: {
      'Authorization': 'Bearer token'
    }
  })
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.error(error);
  });

并发请求:

javascript 复制代码
axios.all([
    axios.get('https://jsonplaceholder.typicode.com/posts/1'),
    axios.get('https://jsonplaceholder.typicode.com/posts/2')
  ])
  .then(axios.spread((response1, response2) => {
    console.log(response1.data);
    console.log(response2.data);
  }))
  .catch(error => {
    console.error(error);
  });

取消请求:

javascript 复制代码
const source = axios.CancelToken.source();

axios.get('https://jsonplaceholder.typicode.com/posts', {
  cancelToken: source.token
})
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    if (axios.isCancel(error)) {
      console.log('Request canceled:', error.message);
    } else {
      console.error(error);
    }
  });

// 取消请求
source.cancel('Request canceled by the user');

设置默认配置:

javascript 复制代码
axios.defaults.baseURL = 'https://jsonplaceholder.typicode.com';
axios.defaults.headers.common['Authorization'] = 'Bearer token';
axios.defaults.headers.post['Content-Type'] = 'application/json';

以上是 axios 的一些常用用法和功能示例

相关推荐
xixixin_2 小时前
【React】为什么移除事件要写在useEffect的return里面?
前端·javascript·react.js
嘗_2 小时前
react 源码2
前端·javascript·react.js
我只会写Bug啊6 小时前
Vue文件预览终极方案:PNG/EXCEL/PDF/DOCX/OFD等10+格式一键渲染,开源即用!
前端·vue.js·pdf·excel·预览
扯蛋4387 小时前
LangChain的学习之路( 一 )
前端·langchain·mcp
Mr.Jessy7 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
午安~婉7 小时前
javaScript八股问题
开发语言·javascript·原型模式
西西学代码8 小时前
Flutter---个人信息(5)---持久化存储
java·javascript·flutter
芝麻开门-新起点8 小时前
flutter 生命周期管理:从 Widget 到 State 的完整解析
开发语言·javascript·ecmascript
ConardLi9 小时前
Easy Dataset 已经突破 11.5K Star,这次又带来多项功能更新!
前端·javascript·后端
冴羽9 小时前
10 个被严重低估的 JS 特性,直接少写 500 行代码
前端·javascript·性能优化