gpt4 book ai didi

java - 限制 REST 中的 json 参数

转载 作者:行者123 更新时间:2023-11-30 02:29:33 26 4
gpt4 key购买 nike

我是使用 Spring 实现 REST 的新手。我创建了一个 REST API,它接受用于 CRUD 操作的 user 对象。 user 实体有很多映射到表的字段,例如 created_timeupdated_time 以及一些我在 POST 方法中不期望的其他字段。我只需要对象中的用户名年龄。我怎样才能得到这个来接受和发送 json 响应对象。

@RestController
@RequestMapping (value = "/user" , produces = {"application/json"}, consumes = {"application/json"})
public class UserController{

@Autowired
private UserService userService;

@RequestMapping(value = "/user", method = RequestMethod.POST)
public User createUser(@RequestBody User user){
User user = userService.createUser(user);
return user;
}

预期输入{username":"Ram",age::33}预期响应 {id;;24, username":"Ram",age::33}

最佳答案

首先,如果您想创建一个成熟的 REST API,那么您必须指定一个唯一且有意义的 URL,并向其中添加适当的 HTTP 动词。

如果你这样写,它会被认为是一个更好的 REST API 处理程序:

    @RestController
public class UserController{

@Autowired
private UserService userService;

@RequestMapping(value = "/user/create", method = RequestMethod.POST, consumes = "application/json", produces = "application/json")
public ResponseEntity<User> createUser(@RequestBody User user){
HttpHeaders header = new HttpHeaders();
header.add("Content-Type", "application/json");

User user = userService.createUser(user);
return new ResponseEntity<User>(user, header, HttpStatus.OK);
}
}

关于java - 限制 REST 中的 json 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44574787/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com