发送字节数组列表作为响应

时间:2020-04-26 06:02:32

标签: arrays spring-boot rest httpresponse

我正在将SpringBoot用于我的宁静的Web服务,并且出于端点之一,我将发送ByteArray作为响应,因为它使用ByteArrayHttpMessageConverter效果很好。

但是现在我想发送ByteArray列表作为响应,但由于找不到合适的消息转换器而失败。

关于如何实现这一目标的任何想法。

以下是端点的代码段。如果我只返回字节数组而不是列表,那么它可以工作,但是当我尝试返回字节数组的列表时,它由于找不到消息转换器而失败:

@RequestMapping(value = "/payloadList", method = RequestMethod.GET)
    @ResponseBody
    public ResponseEntity<List<byte[]>> loadPayload(@RequestParam(value = "tradeIds", required = false) List<String> tradeIds,
                                        @RequestParam(value = "clientName", required = false) String clientName) throws SQLException, IOException {
        LOG.info(String.format("Fetching generic trade details for client : {%s} and trade id : {%s}", clientName, Arrays.toString(tradeIds.toArray())));
        tradeIds.forEach(tradeId->validateRequestParams(tradeId, clientName));
        List<byte[]> payload = tradeLoadService.loadPayload(clientName,tradeIds);
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
        return new ResponseEntity<List<byte[]>> (payload, headers, HttpStatus.OK);
    }

0 个答案:

没有答案