使用Axios将对象发布为JSon

时间:2018-11-28 09:27:15

标签: javascript rest vuejs2 axios

我有一个名为entry的对象,该对象的属性为namesurnameage

我尝试使用axios将此对象与post请求一起发送到我的REST服务器。

axios.post('http://host/myurl/myservice/',{data:this.ent})

但是此操作失败

  

400错误的请求

因为实际发送的是

 data: {data: {"name":"Jakob", "surname":"Laurence", "age":"25"} }

服务器上没有识别出额外的data字段。

如果我打电话

axios.post('http://host/myurl/myservice/',{
"name":this.entry.name, "surname":this.entry.surname, "age":this.entry.age 
})

然后一切正常。

如何在不使用axios生成额外的数据字段的情况下发布整个对象,以免服务器混乱?

谢谢。

P.S。以上所有内容都在我的Vue项目中进行(不确定是否相关)。

2 个答案:

答案 0 :(得分:3)

直接传递整个对象:

axios.post('http://host/myurl/myservice/', this.ent);

答案 1 :(得分:0)

在将数据添加到axios网址之前将其定义为常量。

const postData = {
  name: this.entry.name,
  surname: this.entry.surname,
  age: this.entry.age
}
axios.post('http://host/myurl/myservice/', postData)