我尝试将多个文件从我的服务器(NanoHttpd)发送到我的客户端(Apache DefaultHttpClient)。
我的方法是通过 NanoHttpd 的一个 Response 发送多个文件。
我只能在响应中发送一个输入流,并且据我所知,我只能对请求使用一个响应。
我已经尝试过使用 SequenceInputStream,但这会将所有文件合并在一起。
有没有办法在一个输入流中发送多个文件而不合并它们,这样我就可以单独访问它们?
提前致谢。
最佳答案
您可以在响应中使用 MIME/Multipart 编码,这是通过 HTTP 发送多部分结构化内容的标准方式,并且 Apache 客户端应该能够动态解码(尽管在服务器端,您应该使用库来生成这种不那么简单的编码)。
另一种可能更简单的方法是在服务器端发送 ZIP 流:JDK 拥有对两侧数据进行编码和解码的所有功能,请参阅 ZipEntry 和 ZipInputStream/ZipOutputstream。
关于java - 包含多个文件的InputStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16262439/