我想使用 Webflux Web 客户端将文件上传到 rest api。 接受文件的 API 的内容类型为APPLICATION_OCTET_STREAM
如何使用 SpringWebClient
执行此操作?
如何将下面的 curl 转换为WebClient
请求?
curl -i -X POST --header "Content-Type:application/octet-stream" --header --data-binary @myfile.pdf https://some-host/some-url
注意- 我不希望文件非常大
这就是我上传文件的方式
步骤 1:将文件读取为字节数组
bytes = new FileSystemResource((filePath)).getInputStream()
.readAllBytes();
步骤 2:将字节数组传递给bodyValue
方法
webClient.post()
.uri("Some-uri)
.contentType(MediaType.APPLICATION_OCTET_STREAM)
.bodyValue(bytes)
.retrieve()
.toBodilessEntity())