Att*_*ila 5 rest post spring spring-boot
在 Spring Boot RestController 中使用 PostMapping 时,是否有一种简单的方法可以将 POST HTTP 请求的正文作为 InputStream 处理?
接受来自 Multipart HTTP POST 请求的文件上传作为 MultipartFile 实例非常简单,但我希望能够简单地将二进制内容发布到 HTTP 端点并将其作为 InputStream 处理。
这可以用 Spring Boot 吗?
例如使用以下 Postman POST:
如果您的方法只有一个InputStream参数,那么您将获得请求正文。
@RequestMapping(method = RequestMethod.PUT)
public ResponseEntity<Void> put(InputStream is) {
// Do something
return ResponseEntity.ok();
}
Run Code Online (Sandbox Code Playgroud)
这是 Spring Boot 2.4.1 的情况。
我知道两种可能的方法
取 HttpEntity
@PostMapping
public ResponseEntity<String> post(HttpEntity<byte[]> requestEntity) {
return ResponseEntity.ok(new String(requestEntity.getBody()));
}
Run Code Online (Sandbox Code Playgroud)
采取整个请求
@PostMapping
public ResponseEntity<String> post(HttpServletRequest request) {
request.getInputStream();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1797 次 |
| 最近记录: |