基于springboot与axios的整合问题
springboot与axios的整合
使用axios的时候一定要引用它的js包(可用npm命令:npm install axios)
1.get请求
// 为给定 ID 的 user 创建请求 axios.get('/demo/name') .then(function (response) { console.log(response.data); }) .catch(function (error) { console.log(error); });
response用于接收后端的数据,而response.data正好对应后端传入的 hello
后端接收
@RequestMapping(value = "/name",method = RequestMethod.GET) @ResponseBody public String Testname(){ return "hello"; }
2.post请求
这是一段前端发送请求代码,利用axios发送post请求
<button type="button" onclick="openUrl()">testaxios</button> <script> function openUrl(){ axios({ method: 'post', url: '/demo/user', data: { ID: 'Fred', lastName: 'Flintstone' } }); } </script>
通过chrome浏览器解析,往后端传递的数据类型为Request Payload。
如何想接收这段数据,就需要用到@RequestBody注解
@RequestMapping(value = "/user",method = RequestMethod.POST) @ResponseBody public void Test(@RequestBody HashMap<String,String> map){ System.out.println(map.get("ID")); }
这种写法,你就可以通过健值对的形式获取了
springboot与axios遇到的坑
spring boot
@RequestParam
适用于content-type不等于application/json的post请求,post请求需要用qs.stringify()序列化数据
适用于get请求(好像只能传基本类型)
@RequestBody
适用于content-type等于application/json的post请求
axios
get
axios.get( '/api', { params: { //必须要这么写 })
post
axios.post( '/api', {}或者params//参数名随意)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
解决eclipse启动tomcat时不能加载web项目的问题
这篇文章主要介绍了解决eclipse启动tomcat时不能加载web项目的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06spring boot整合redis实现RedisTemplate三分钟快速入门
这篇文章主要介绍了spring boot整合redis实现RedisTemplate三分钟快速入门,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-12-12Java在Map转Json字符串时出现"\"转义字符的解决办法
当一个Map被转成Json字符串后,被添加到另一个Map中,会出现被加上“\”转义字符的情况,这个时候该如何解决呢,下面就来和小编一起了解一下2023-07-07Java实现大文件的分片上传与下载(springboot+vue3)
这篇文章主要为大家详细介绍了java基于springboot+vue3如何大文件的分片上传与下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2023-06-06
最新评论