有什么办法可以通过相同的REST服务产生两种不同媒体类型的单独响应吗?
我有一个使用JSON并生成JSON的服务。
现在,我希望使用相同的方法为pdf生成byte[]
或为UserModel
生成这样的定义,就像
@RequestMapping(value="/getUser/{userId}",
produces = {"application/pdf","application/json"},
consumes = {"application/json"},
method = RequestMethod.GET)
public ResponseEntity<UserModel> getUser(@PathVariable("userId")String userId){
//returns UserModel JSON
and can return
//returns bye[] and I generate pdf from the stream
}
由于API CALL命中模式的参数相同,我该如何即时决定生成哪一个。我可以轻松地创建另一种方法来使其工作,但是我想知道如何在Spring Boot中实现produces = "application/pdf","application/json"},
,因为两者是完全不同的类型。