react中的axios模块你了解吗

 更新时间:2022年03月11日 11:13:29   作者:Han_Zhou_Z  
这篇文章主要为大家详细介绍了react中的axios模块,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

一、react中axios模块的使用

1、基于Promise的HTTP库用在浏览器和node.js中

可以提供以下服务:

(1)从浏览器中创建XMLHttpRequest

(2)从node.js创建http请求

(3)支持PromiseAPI

(4)拦截请求和响应

(5)转换请求数据和响应数据

(6)取消请求

(7)自动转换JSON数据

(8)客户端支持防御XSRF

2、创建XMLHttpRequest对象:

该对象是ajax(异步请求)的核心

3、在react中安装axios

npm install axios

4、发起不带参数的get请求

方式一:axios({ methods: 'get', url: '/ulr' }).then(res => {//请求成功后的处理
            console.log(res)
}).catch(err => {//请求失败后的处理
           console.error(err);
})

'res'是服务器返回的响应数据

err是请求失败后的信息

方式二:axios.get('/url').then(res => {
            console.log(res)
}).catch(err => {
           console.error(err);
})

5、带参数的get请求

在服务器端获取请求参数的方式--> req(request).query.参数名

方式一: axios.get('/url', {params: {id: 12}}).then(res => {
              console.log(res)
}).catch(err => {
              console.error(err);
})
//请求的地址实际为:http://localhost:8080/url?id=12
方式二:axios({
               methods: 'get',
               url: 'url',
                params: {
                     id:12    //'id'为参数名
                   }
            }).then(res => {
                   console.log(res)
}).catch(err => {
                   console.error(err);
})

6、post请求:发送表单数据和文件上传

(1)不带参数的post请求

方法一:axios({
        	method:'post',
	        url:'/url'
        }).then(res=>{})
          .catch(err=>{})
方法二:axios.post('url')
		    .then(res=>{})
			.catch(err=>{})

(2)带参数的post请求:在服务器端获取请求参数的方式-->req.body.参数名

服务器端使用req.body.参数名 获取数据
let data = {}
let config = {}
方式一:  axios.post('/url',{id:12}).then(res => {
                   console.log(res)
            }).catch(err => {
                   console.error(err);
            })
方式二:  axios({
              methods: 'post',
              url: '/url',
              data: {id:12}
          }).then(res => {
                console.log(res)
          }).catch(err => {
                console.error(err);
          })

7、put请求

和post请求类似

8、delete请求

(1)可以像get请求一样包装请求参数:在服务器端获取请求参数的方式--req.query.参数名

参数在url的params中:服务器端使用req.query.参数名 获取数据
axios.delete('/url', {
params: {id: 12}  //'id'为参数名
}).then(res => {
                console.log(res)
}).catch(err => {
                console.error(err);
})

(2)可以像post请求一样包装请求参数:在服务器端获取请求参数的方式--req.body.参数名

参数在请求体(post)中 将params改为 data就行:服务器端使用req.body.参数名 获取数据
axios.delete('/url', {
data: {id: 12}  //'id'为参数名
}).then(res => {
                console.log(res)
}).catch(err => {
                console.error(err);
})

强调:axios的响应结构

后台res.json(result)   //发送了json格式的数据

相当于{ data: result }

前端res.data

例如:

后台:

res.json({
    code:1001,
    msg: '小森'
})

 前端:

res.data.code

res.data.msg

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!   

相关文章

  • 在React中使用React.createRef:更优雅的DOM引用方式

    在React中使用React.createRef:更优雅的DOM引用方式

    React提供了多种方式来引用DOM元素,其中React.createRef()是一种更为现代、更优雅的方式,在这篇文章中,我们将深入了解React.createRef()的应用,以及它为开发者带来的便利,感兴趣的朋友一起看看吧
    2024-01-01
  • react自动化构建路由的实现

    react自动化构建路由的实现

    这篇文章主要介绍了react自动化构建路由的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 详解React Native项目中启用Hermes引擎

    详解React Native项目中启用Hermes引擎

    这篇文章主要为大家介绍了React Native项目中启用Hermes引擎实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • React实现过渡效果更新时间展示功能

    React实现过渡效果更新时间展示功能

    创建一个组件,实时展示时分秒,并且动态更新数据,这篇文章主要介绍了React实现过渡效果更新时间展示功能,需要的朋友可以参考下
    2024-07-07
  • React反向代理与CSS模块化的使用案例

    React反向代理与CSS模块化的使用案例

    这篇文章主要介绍了React反向代理与CSS模块化的使用案例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-02-02
  • React-Router v6实现页面级按钮权限示例详解

    React-Router v6实现页面级按钮权限示例详解

    这篇文章主要介绍了使用 reac+reactRouter来实现页面级的按钮权限功能,这篇文章分三部分,实现思路、代码实现、踩坑记录,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2023-10-10
  • create-react-app修改为多页面支持的方法

    create-react-app修改为多页面支持的方法

    本篇文章主要介绍了create-react-app修改为多页面支持的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • 解决React报错Expected an assignment or function call and instead saw an expression

    解决React报错Expected an assignment or funct

    这篇文章主要为大家介绍了React报错Expected an assignment or function call and instead saw an expression解决方案详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • react-redux集中式状态管理及基本使用与优化

    react-redux集中式状态管理及基本使用与优化

    react-redux把组件分为两类,一类叫做UI组件,一类叫做容器组件,这篇文章主要介绍了集中式状态管理<react-redux>基本使用与优化,需要的朋友可以参考下
    2022-08-08
  • React Fiber构建beginWork源码解析

    React Fiber构建beginWork源码解析

    这篇文章主要为大家介绍了React Fiber构建beginWork源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02

最新评论