美文网首页
axios中针对后端RESTful接口的传参规范

axios中针对后端RESTful接口的传参规范

作者: 千茉紫依 | 来源:发表于2019-03-24 19:46 被阅读0次

首先,什么是RESTful接口,请参考这篇
RESTful API 最佳实践,作者:阮一峰

我常用的方法有四个POST、DELETE、PUT、GET,分别对应着增删改查

前端POST:
await axios.post( "/user",{ username : "admin" , password : "123" })

后端接收:let { username , password } = ctx.request.body

使用post方法时header['content-type']默认为application/json,此时数据向后端传输时会JSON序列化,所以直接在对象中写键值对就可以了。在后端通过request.body参数接收变量。

前端DELETE:
await axios.delete( "/user" , { data: {username : "admin" , password : "123" } })

后端接收:let { username , password } = ctx.request.body

使用delete方法时,由于数据包中没有默认的header['content-type']=application/json,此时数据向后端传输时,需要做一层data封装。在后端通过request.body参数接收变量。

前端PUT:
await axios.put( "/user" , { username : "admin" , password : "123"})

后端接收:let { username , password } = ctx.request.body

put方法与post同理,也是直接在对象中写键值对。在后端通过request.body参数接收变量。

前端GET:
await axios.get("/user" , { params : { username : "admin" , password: "123"} })
或者 
await axios.get("/user/username?username='admin'&password='123' ")

后端接收:let { username , password } = ctx.request.query

使用get方法时,数据会在传输时被转化为query,params数据到达后端时是这种形式:username='admin'&password='123',所以在要提前声明params 或者直接以?形式传递转化后的最终结果。在后端通过request.query参数接收变量。

相关文章

网友评论

      本文标题:axios中针对后端RESTful接口的传参规范

      本文链接:https://www.haomeiwen.com/subject/uzxpvqtx.html