比如说有一个接口api/class/1/student/2,api/class/{classId}/student/{studentId},这样的,用axios如何优雅的传入那两个id呢?还是说只能通过字符串拼接的方式?
js es6不是有模板字符串吗,用``符号包裹就可以在里面写变量了,比如`api/class/${classId}/student/${studentId}`这样就把变量传进去了
这个也算是url拼接了,我想问的是能不能用类似data:{},param:{}这种方式,实在不行你这种方案确实是最佳的选择了
@helloworldworldhello: 那就只有这种形式了
axios.get('demo/url', {
params: {
id: 123,
name: 'Henry',
},
timeout: 1000,
...//其他相关配置
})```
其他就不清楚了
@Mr_Wink: 这种最终转成url是demo/url?id=123&name=456,这种形式,后端api不支持这种
接口规范:https://www.cnblogs.com/pythonywy/archive/2004/01/13/11448845.html
你这个应该 post:api/student
data :{
classId : 1
studentId :1
}
post代表着新增操作了
@helloworldworldhello: 大哥别那么死板好不好,实践开发都post多,这种带id的不建议用get,你真要用get,data就是params就好了
你封装的方法中做字符串替换不好吗,规定一个特定的字符做替换