通过相同的休息服务产生2种不同媒体类型的单独响应

时间:2019-04-07 08:29:55

标签: java spring-boot

有什么办法可以通过相同的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"},,因为两者是完全不同的类型。

0 个答案:

没有答案