加粗样式
项目场景:提示:这里简述项目相关背景:
前后端分离项目spring boot+vue
问题描述:
提示:前端给后端传值:在前端向后台发送一个json对象(字符串),后端用@RequestBody匹配接受的时候就会出现415,如果不用@RequestBody,那么前端发送来的数据是不能被正确解析成对象里的属性的。
@PostMapping
public Boolean save(@RequestBody Book book){
return bookService.save(book);
}
``
提示:这里填写问题的分析:
第一种情况:
没有转换json数据
第二种情况:
表现层(controller)数据没有一致性处理
下面展示一些 内联代码片。
// An highlighted block @Data public class R { private Boolean flag; private Object data; private String msg; public R(){ } public R(Boolean flag) { this.flag=flag; } public R(Boolean flag,Object data) { this.flag=flag; this.data=data; } public R(Boolean flag,String msg){ this.flag = flag; this.msg = msg; } public R(String msg){ this.flag = false; this.msg = msg; }}
第三种情况:
前台穿过来的json对象的key没有和实体类中共的属性对应,是绑定不成功的。
第四种情况
一定要指定contentType的值为『“application/json”』
解决方案: 可以用Axios Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。 拦截请求和响应
转换请求数据和响应数据
取消请求
自动转换 JSON 数据
使用 npm:
$ npm install axios
使用 bower:
$ bower install axios
使用 cdn:
切记不要
这么引入会报axios错误
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)