ディレクトリをPoco :: HTTPServerResponseストリームに直接圧縮したいと思います。ただし、次のコードで生成されたzipファイルをダウンロードすると、破損したアーカイブが作成されます。私は、以下の圧縮アプローチがローカル作成のZIPファイルでうまくいくことを知っています。私は何が不足しているのですか、これは単に不可能ですか? (ポコのv1.6.1)私はわずかな差が、正常に同じ技術を使用Poco HTTPServerResponseへのストリームPoco Zip圧縮
std::string directory = "/tmp/data";
response.setStatusAndReason(HTTPResponse::HTTPStatus::HTTP_OK);
response.setKeepAlive(true);
response.setContentType("application/zip");
response.set("Content-Disposition","attachment; filename=\"data.zip\"");
Poco::Zip::Compress compress(response.send(),false);
compress.addRecursive(directory,
Poco::Zip::ZipCommon::CompressionMethod::CM_STORE,
Poco::Zip::ZipCommon::CompressionLevel::CL_MAXIMUM,
false, "data");
compress.close();