将 Publisher<CompletedFileUpload> 转换为 Maybe<HttpResponse<?>>
Convert Publisher<CompletedFileUpload> to Maybe<HttpResponse<?>>
我有以下方法
public Maybe<HttpResponse<?>> post(Publisher<CompletedFileUpload> files) {
MultipartBody.Builder requestBody = MultipartBody.builder();
return Flowable.fromPublisher(files).flatMap(file -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
return this.iProductClient.post(requestBody.build());
});
}
this.iProductClient.post(requestBody.build());
中的 return 类型是 Maybe<HttpResponse<?>>
如何将下面的代码转换成returnMaybe<HttpResponse<?>>
,目前下面的方法有错误
return Flowable.fromPublisher(files).flatMap(file -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
return this.iProductClient.post(requestBody.build());
});
您可以在请求发送中使用collect
然后平面图:
return Flowable.fromPublisher(files)
.collect(MultipartBody::builder, (requestBody, file) -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
})
.flatMapMaybe(requestBody -> iProductClient.post(requestBody.build()))
;
我有以下方法
public Maybe<HttpResponse<?>> post(Publisher<CompletedFileUpload> files) {
MultipartBody.Builder requestBody = MultipartBody.builder();
return Flowable.fromPublisher(files).flatMap(file -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
return this.iProductClient.post(requestBody.build());
});
}
this.iProductClient.post(requestBody.build());
中的 return 类型是 Maybe<HttpResponse<?>>
如何将下面的代码转换成returnMaybe<HttpResponse<?>>
,目前下面的方法有错误
return Flowable.fromPublisher(files).flatMap(file -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
return this.iProductClient.post(requestBody.build());
});
您可以在请求发送中使用collect
然后平面图:
return Flowable.fromPublisher(files)
.collect(MultipartBody::builder, (requestBody, file) -> {
requestBody
.addPart("file", file.getFilename(), MediaType.TEXT_PLAIN_TYPE, file.getBytes())
.addPart("id", "asdasdsds");
})
.flatMapMaybe(requestBody -> iProductClient.post(requestBody.build()))
;