一、前后端数据交互格式要求
1.springboot http请求参数处理
请求方式
- GET:用于查询
- POST:用于插入
- application/x-www-form-urlencoded:浏览器原生
- multipart/form-data:表单上传文件
- application/json:json字符串
- text/xml:xml格式
- PUT:用于更新
- DELETE:用于删除
第一类请求路径参数注解
- @PathVaribale:获取url中的数据 url/{id}
- @RequetParam:获取请求参数的值 url?name=
第二类Body参数注解(没有大小限制)
- @RequestBody:利用一个对象去获取前端传过来的数据(获取Body参数)
- 技巧
前端:api=>headers:{'Content-Type':'application/json'},method:'post',data:data后端:POST 请求@RequestBody Map<String,Object> map后端用map接收注意linkedhashmap错误:解决方案:将map转成json,在转成对象(这种方式比较简单,很多json工具方法都有)反序列化成对象import org.codehaus.jackson.map.ObjectMapper;import org.codehaus.jackson.type.TypeReference;List<XXX> list1 = (List<XXX>) map.get("list");ObjectMapper mapper = new ObjectMapper();List<XXX> list = mapper.convertValue(list1, new TypeReference<List<XXX>>() { });
万能JSON字符串穿透前后端(有大小限制)
【后端接收json字符串的时候使用(@RequestBody String data) String类型,然后用JSONObject转换成对应的实体类 给逻辑层去处理。 前端请求头里设置了传给后端的数据类型是application/json,JSON.stringify()把待传数据转成JSON字符串发给后端。】
