![](/img/trans.png)
[英]C++ how to move files and copy them from one disk to different without the usage of winapi?
[英]How to copy multiple files from server to local hard disk in one http request using C++?
如何在一个请求中通过C ++ Web应用程序将一组文件从服务器计算机复制到本地硬盘? 这是从服务器将批量文件下载到本地计算机的一种。 我猜在Java中,您可以通过ZipInputStream和GZipInputStream做到这一点。
是否有可能完全通过服务器端代码来实现? 还是需要在本地计算机上运行的客户端来执行文件的批量复制?
假设您有一个Java servlet / ISAPI扩展,可以接受以下形式的请求
http:// server:port / fileserver?f = FILE1&f = FILE2&.....&f = FILEN
收到此类请求后,服务器端代码可以使用zlib将所有文件打包到一个zip文件中,并将该zip文件作为HTTP响应发送,设置Content-Type,Content-Length,Last-Modified等。
进一步的注意:如果在IIS6及更高版本上使用ISAPI,则还可以将此内容添加到IIS的内核模式响应缓存中。
如果用户意识到这一点,并且文件不需要用于网站渲染,则可以将其推送到存档中并从您的站点获得链接(或执行诸如sourceforge之类的操作,重定向到存档,浏览器只需下载它即可。要进行归档,您可以使用zlib ,只需将Content-type作为gzip发送并推送数据(此处来自stdin)
int ret;
/* avoid end-of-line conversions */
SET_BINARY_MODE(stdin);
SET_BINARY_MODE(stdout);
ret = def(stdin, stdout, Z_DEFAULT_COMPRESSION);
if (ret != Z_OK)
zerr(ret);
return ret;
如果您试图将整个页面(HTML,CSS,JS,IMG)作为一个页面发送,那么所有这些文件都可以插入HTML甚至图像中。 (参见此 )。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.