Spring boot接收axios.post传输的json格式参数

当我们前端传数据到后端的时候,经常会出现传一下复杂的组合对象。

Spring boot

1.封装一个接收体 (太懒了不愿意写)
2.使用map接收

pom.xml

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.56</version>
        </dependency>

controller

import com.alibaba.fastjson.JSONObject;
 public ResponseDoMain addRole(@RequestBody Map<String, Object> map) {
        TRole role = JSONObject.parseObject(JSONObject.toJSONString(map.get("role")), TRole.class);
        ArrayList lists = (ArrayList) map.get("list");
        this.tRoleService.insert(role);
        this.tRoleMenuService.updateRoleMenu(role.getRoleId(), lists);
        return ResponseDoMain.success("");
    }

其实就是map -> json -> entity的过程

axios

postJson(url, obj) {
    return axios.post(url, obj, {
      headers: {
        "Content-Type": "application/json;charset=utf-8"
      }
    });
  }

注意:
在这里插入图片描述请求的参数是json,而不是拼接成字符串的格式。
并没有使用JSON.stringify()来转换参数。
如果不行,可以尝试一下使用JSON.stringify()(QAQ… 我没有试过,懒)

发布了11 篇原创文章 · 获赞 12 · 访问量 1920

猜你喜欢

转载自blog.csdn.net/qq_40822000/article/details/104673249