如何转换并发::流::istrAM到STD::istRAM+C++

如何转换并发::流::istrAM到STD::istRAM+C++,c++,cpprest-sdk,C++,Cpprest Sdk,我正在使用进行编码,并从响应体中获得了Concurrency::streams::istream,如下代码所示: web::http::http_response localVarResponse; auto concurrencyStream = localVarResponse.body(); 我想将流转换为std::istream,并在std::shared_ptr中使用它,以便将其传递给其他类,如: std::istream stdStream = concurrencyStream;

我正在使用进行编码,并从响应体中获得了Concurrency::streams::istream,如下代码所示:

web::http::http_response localVarResponse;
auto concurrencyStream = localVarResponse.body();
我想将流转换为std::istream,并在std::shared_ptr中使用它,以便将其传递给其他类,如:

std::istream stdStream = concurrencyStream;
auto istream_ptr = std::make_shared<std::istream>(stdStream);   
如何转换为std::istream

编辑:通过它间接工作

std::string str = localVarResponse.content_ready().get().extract_utf8string(true).get();
std::istringstream SStream(str);
std::istream inputStream(SStream.rdbuf());

如果你能分享你得到的错误,也许会有所帮助。我得到的错误信息不多。查看文档,这些类型是不相关的。因此,唯一可能的技术是编写一个std::streambuf派生类,将请求转发到包含的concurrency::stream缓冲区。例如,请看这里,虽然谷歌将展示更多的教程,但这是一个常见的主题。
std::string str = localVarResponse.content_ready().get().extract_utf8string(true).get();
std::istringstream SStream(str);
std::istream inputStream(SStream.rdbuf());