本周是node项目进行的第二周,我们已经能较为熟练地使用axios了,以前使用ajax其实就是简单的套公式,axios与ajax异曲同工,但还是有需要注意的点,今天就总结一下传参时,data和params的区别。
众所周知,传参的方式有两种:一种是data,一种是params。params的发送请求是将请求的接口按照字符串拼接起来放在url上,而data是将请求的参数对象在body作为一个请求体,一般是JSON格式。一般来说,data方法用于post请求,params用于get请求,但是在写项目的过程中,我们会发现,有时候用后端的post接口时,用data传参并未成功。
我们写node项目时,把后端接口封装成了node接口,再在相关js文件中调用node接口,均是使用axios调用,使用console.log输出不难发现,js中的请求能将参数传给node接口,也就是说node中调用的接口并未接受到参数,后面将node请求后端接口的部分改用params来传递参数,便能请求成功。我查了查,这是因为后端使用了@RequestBody Map<String,Object> map来接收参数,所以,当我们用data调用接口不成功时,可以换成params来试试,还有就是,在写页面时,遇到问题,可以选择一步一步排除,比如使用console.log来测试,把范围缩小至一小段代码,这样解决问题就会更加快而准了。
接下来,还会遇见更多难题,我们要有耐心去找到并解决好,这无疑是对我们技术的提高,加油!