有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JavaSpring:对不同的参数和返回值使用相同的请求映射

我有两个电话。第一个将User对象作为参数,映射到/login并返回List

@RequestMapping(value="/login", method = RequestMethod.POST)
public ResponseEntity<List<Login>> login(@RequestBody User user) {
    return new ResponseEntity<List<Login>>(HttpStatus.OK);    
}

第二个将ApiToken对象作为参数,映射到/login/apitoken并返回一个String

@RequestMapping(value="/login/apitoken", method = RequestMethod.POST)
public ResponseEntity<String> autheticateApiToken(@RequestBody ApiToken apiToken) {
    return new ResponseEntity<String>(authenticateApiToken, HttpStatus.OK);
}

我觉得这不是一个好的设计,所以我想把它组合成一个请求映射

@RequestMapping(value={"/v1/login", "/v1/login/apitoken"}, method = RequestMethod.POST)

但我不知道如何继续,因为这两个端点有不同的RequestBody和返回方法。有人知道如何将这两个请求映射组合成一个吗?还是旧功能足够好


共 (0) 个答案