vue中使用$http.post请求传参的错误及解决

作者:B–rabbit 时间:2024-04-27 15:47:13 

使用$http.post请求传参的错误

在使用$http请求后台,照常我们在后端 使用注解@PostMapper或者 @RequestMapping(value = “XXXX”,method = RequestMethod.POST)接受请求

handleAdd(node) {
this.$http.post("/item/category/addCategory",{
node:node
})
.then(({data})=>{
this.$emit("close");
this.$message.success("添加成功!");
}).catch(() => {
    this.$message.error("添加失败!");
   });
   }

结果报了一个’GET’的错误,我就很纳闷。并没有写get方法,那必定会出错。

vue中使用$http.post请求传参的错误及解决

截图奉上==

vue中使用$http.post请求传参的错误及解决

传递的是json对象而不是数组。

还好之前有过post传递参数的项目之后又搜了一下,

如下面这种

handleAdd(node) {
this.$http({
method:'post',
url:'/item/category/addCategory',
data: node
}).then(({data})=>{
this.$emit("close");
this.$message.success("添加成功!");
}).catch(() => {
            this.$message.error("添加失败!");
           });
           }

整体上没有问题

vue中使用$http.post请求传参的错误及解决

之后我有尝试了一下

handleAdd(node) {
this.$http.post("/item/category/addCategory",{
node:this.$qs.stringify(node)
})
.then(({data})=>{
this.$emit("close");
this.$message.success("添加成功!");
}).catch(() => {
    this.$message.error("添加失败!");
   });
}

传递的结果

vue中使用$http.post请求传参的错误及解决

三种方式都可以使用,但我只有第二种方式成功啦。

vue post请求之坑

最近用的vue请求数据,坑死,还是对前端vue框架不熟。

与后端通信有问题,要么是json加入到url有问题、要么是json解析有问题。

解决方法

1、请求参数一个用url传

 var json=[{"msg”:“123"}];
 var temp=encodeURI(JSON.stringify(json));      //重点
 var urls="http://202.114.207.232:8080/web/data?operations="+temp;
            this.$axios({type:'post',url:urls, dataType:'json' }).then( res => { console.log(res) }).catch( e => { console.info(e) })

2、一个用data包装传

var Data=[{}]
var url = "http://111.111.111.111:8080/web/data";
var params = new URLSearchParams();
params.append("operations", JSON.stringify(Data));           //重点
// params.append('param2', 'value2');
that.$axios.post(url, params)
    .then(response => {
        // post 成功,response.data 为返回的数据
        console.log(response.data)
    })
    .catch(error => {
        // 请求失败
        console.log(error)
    })

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

来源:https://blog.csdn.net/weixin_43871333/article/details/100125234

标签:vue,$http.post,请求,传参
0
投稿

猜你喜欢

  • Python函数any()和all()的用法及区别介绍

    2021-11-23 04:43:16
  • pandas is in和not in的使用说明

    2023-04-04 22:06:11
  • Pytorch训练过程出现nan的解决方式

    2021-04-21 08:12:08
  • Vue中使用vee-validate表单验证的方法

    2024-06-05 15:29:04
  • 基于.NET平台常用的框架和开源程序整理

    2024-06-05 09:26:51
  • JS实现向表格行添加新单元格的方法

    2024-02-25 03:09:26
  • PHP实现的随机IP函数【国内IP段】

    2024-06-05 09:49:17
  • MySQL8.0.32安装及环境配置过程

    2024-01-19 03:20:49
  • Python写代码的七条重要技巧介绍

    2023-09-14 06:04:07
  • 页面无刷新调用数据(IFRAME+js)

    2009-06-01 11:29:00
  • 利用Python绘画双摆操作分享

    2022-12-08 21:30:36
  • Mysql存储过程如何实现历史数据迁移

    2024-01-24 13:02:33
  • Python对HTML转义字符进行反转义的实现方法

    2022-07-27 08:44:34
  • mysql 8.0.15 winx64解压版图文安装教程

    2024-01-16 08:22:32
  • JavaScript eval() 函数介绍及应用示例

    2024-04-19 10:00:01
  • python数字类型和占位符详情

    2022-10-03 06:36:32
  • 在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程

    2023-04-22 23:03:44
  • Python文件处理与垃圾回收机制详情

    2023-06-14 16:36:17
  • Python3简单实例计算同花的概率代码

    2023-07-20 16:23:03
  • 从零开始学Golang的接口

    2023-10-09 02:26:03
  • asp之家 网络编程 m.aspxhome.com