首页 > 其他分享 >Axios学习(一)axios中post的body与query传参区别及使用总结

Axios学习(一)axios中post的body与query传参区别及使用总结

时间:2023-03-24 18:34:03浏览次数:35  
标签:body 传参 axios 请求 参数 query post

踩坑描述

最近在vue项目开发中遇到了一个axios请求方面的问题,post请求传单个参数的时候,按照post请求方式传参但是接口报错,在swagger上面测试后发现接口是没有问题的。

踩坑分析

其实仔细一点会发现,这个post请求的Parameter Typequery,而一般情况下post请求方式的Parameter Type body,在一些极少情况下,post请求的参数体可能会存在bodyquery共存的情况,所以这其实涉及到post请求的三大部分:headerbodyquery(简单来说:header:请求头、body:多参数请求体、query:单参数请求体)。后端的接口在不注解的情况下默认是query,所以get请求用query,因为一般传递单个参数,而post请求多用body,因为一般传递多个参数。

解决方案1

// 参数情况:(interfaceState:query参数,ID:body参数)
this.$axios.post(`${
    this.url}updateCompanyState?interfaceState=${
    state}`, // query参数可以直接拼在url后面
{
    ID: '123', // body参数
},
).then(res => {

    console.log(res);
});

解决方案2

// 参数情况:(interfaceState:query参数,ID:body参数)
this.$axios({
    url: `${this.url}updateCompanyState`,
    method: 'post',
    data: {
        ID: '123',
    }, // body参数
    params: {
        interfaceState: state,
    }, // query参数
}).then((res) => {
    console.log(res);
});

 

标签:body,传参,axios,请求,参数,query,post
From: https://www.cnblogs.com/kunmomo/p/17253011.html

相关文章

  • JMeter 线程内/跨线程传参
    线程内、跨线程传参beanshell 线程内传参1、正则表达式  想要获取到下图红框中的数据,然后作为参数传给下一个接口。  可以通过正则表达式来匹配到该数据。......
  • vue-cli 初始化创建 vue2.9.6 项目路由守卫、封装axios、vuex
    阅读目录Vue如何封装Axios请求1安装axios2封装代码axios应用方式Vue中的路由守卫使用演示1全局守卫2组件级守卫3单个路由独享的守卫4官网整个路由守卫被触发流程的......
  • javaweb——使用axios和vue改造书城项目的购物车
    资料来源于:B站尚硅谷JavaWeb教程(全新技术栈,全程实战),本人才疏学浅,记录笔记以供日后回顾由于是多个视频内容混合在一起,因此只放了第一个链接视频链接代码示例index......
  • java方法- 命令行传参(不重要,了解即可)
    命令行传参运行一个程序时再传递给消息,就靠传递命令行参数给main()函数实现publicclassCommandLine{  publicstaticvoidmain(String[]args){    for(i......
  • Axios的快速学习
    资料来源于:B站尚硅谷JavaWeb教程(全新技术栈,全程实战),本人才疏学浅,记录笔记以供日后回顾由于是多个视频内容混合在一起,因此只放了第一个链接视频链接知识点Axios......
  • axios对后端请求统一封装及全局调用配置
     以下为个人项目笔记:  两个文件如下:文件【main.js】import{createApp}from'vue'importAppfrom'./App.vue'importrouterfrom'./router'//导......
  • axios网络请求
     ?问题:如何添加token,解决鉴权问题 方案:通过登录页面,发送请求,获取到token值,并把token值存储(localStorage、sessionStorage、cookieStore),示例如下:<template>  <e......
  • axios文件下载!!!!
    前端download(){debugger;this.loading=true;axios.post('http://localhost:8081/brand_case/dao.do?method=ex......
  • 在请求中使用键值对来进行传参,不使用JSON格式
    在项目中碰到了个别请求需要使用键值对进行传参,不允许使用JSON格式。第一步:引入qs模块,qs模块时node自带的模块,直接引入即可importqsfrom'qs'第二步:使用qs.stringif......
  • 在Vue中发起axios请求成功,却被catch捕捉返回Network Error
    前端发起请求成功,后台接收处理返回,却被axios的catch捕获,没有走then函数。  最后添加了headers配置成功解决,如上,附上axios接口配置中文文档:axios中文文档|axios中文网......