axios中data与params的区别

今天在联调接口的时候,发现一个问题,什么问题呢,好大家往下看~~~

对吧 我们后端信息就这样,然后看我怎么传值的

我就写了个data里面是需要的参数,然后控制台报错

看到没 就是一直报参数错误,搞我我一直傻傻的对请求参数看有没有参数,眼睛都干了,

后来无意中将data改为params

 原来params的发送请求是讲请求的接口按照字符串拼接起来
而data是将请求的参数对象在body作为一个请求体,一般是JSON格式
所以我该为params就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: axios `data` 和 `params` 的区别: - `data` 用于在请求体(body)传递请求参数,通常用于 POST 请求。 - `params` 用于在 URL 传递请求参数,通常用于 GET 请求。 简单来说,`data` 用于发送请求体,`params` 用于在 URL 拼接请求参数。 ### 回答2: axios是一个非常流行的JavaScript库,它可以帮助开发人员在前端应用程序轻松地使用HTTP请求。使用axios时,我们经常需要传递参数到服务器,其常见的两种方式是使用dataparamsdata是用于POST、PUT、DELETE等请求方法发送数据给服务器的。在axios,我们可以通过设置data属性来将数据对象发送到服务器。如果我们要使用POST或PUT请求向服务器发送数据,我们就需要将我们要发送的数据通过data属性进行设置。此时,axios会将我们的数据序列化为JSON格式,并将其添加到HTTP请求的请求体。 举个例子,如果我们要向服务器发送一个名为person的JSON对象,其包含一个名为name的属性和一个值为John的字符串,我们可以通过以下方式来设置data属性: ``` axios.post('/api/people', { name: 'John' }).then(response => { console.log(response.data); }).catch(error => { console.log(error); }); ``` params是用于GET请求将参数包含在URL的。通过params,我们可以将一些查询参数添加到我们发送的HTTP请求的URL,在URL可以看到这些参数。使用params发送请求时,axios会将我们指定的参数序列化为字符串,并将其添加到请求的URL。 举个例子,如果我们要向服务器发送一个GET请求来获取名为John的人,我们可以使用以下方式来设置params参数: ``` axios.get('/api/people', { params: { name: 'John' } }).then(response => { console.log(response.data); }).catch(error => { console.log(error); }); ``` 总的来说,我们可以这样总结dataparams之间的区别: - data是用于POST、PUT、DELETE等请求方法发送数据给服务器的;params是用于将参数包含在URL的GET请求的。 - 使用data时,我们需要在请求体序列化数据;使用params时,我们需要将参数序列化为字符串,并将其添加到请求的URL。 - 使用data时,数据对象会被序列化为JSON格式;使用params时,参数会被序列化为字符串。 ### 回答3: axios是一个基于Promise的HTTP客户端,用于在浏览器和Node.js等平台上发送请求。在axiosdataparams是两个常用的属性,用于向服务器端发送请求时,传递参数和数据。 首先,params是GET请求的一种传参方式,它将请求参数添加到请求的URL。例如,如果您需要从https://example.com/api/getData?param1=value1&param2=value2这个URL获取数据,那么params就是param1和param2这两个参数,参数的值对应的是value1和value2。在axios,您可以这样使用params: ``` axios.get('https://example.com/api/getData', { params: { param1: 'value1', param2: 'value2' } }) ``` 接着,data则是POST请求的传参方式,它将参数添加到请求的正文,用于传递复杂的数据类型。例如,如果您想要通过POST方式发送JSON数据,您可以在请求对象指定data属性,将JSON数据传递给服务器。在axios,您可以这样使用data: ``` axios.post('https://example.com/api/postData', { key1: 'value1', key2: 'value2' }) ``` 总的来说,paramsdata都是axios用于发送请求的属性,但它们的用途略有不同。params主要是用于GET请求,用于传递简单参数;data主要是用于POST请求,用于传递复杂数据类型。最终,您需要根据请求的类型和需要传递的数据类型,来选择合适的属性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值