【发布时间】:2022-01-12 12:50:31
【问题描述】:
我正在尝试通过 REST 端点将数据从一台服务器发送到另一台服务器:
服务器 B 启动此请求:
String resource = "http://...";
ResponseEntity<byte[]> response = restTemplate.getForObject(resource, byte[].class, customerID);
服务器A收到请求并返回文件:
ResponseEntity<byte[]> resp = new ResponseEntity<byte[]>(myByteArrayOutputStream.toByteArray(), HttpStatus.OK);
return resp;
但我在 .getForObject 行收到错误:
Required Type: ResponseEntity[]
Provided: byte[]
显然我必须将语句更改为:
byte[] response = restTemplate.getForObject(resource, byte[].class, customerID);
或到
ResponseEntity<byte[]> response = restTemplate.getForObject(resource, ResponseEntity.class, customerID);
然后错误消失了,但我在响应中丢失了 HttpStatus.Ok 消息?这里的正确解决方案是什么?
【问题讨论】:
标签: java spring spring-boot spring-mvc