Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从servlet返回文件和JSON_Java_Servlets - Fatal编程技术网

Java 从servlet返回文件和JSON

Java 从servlet返回文件和JSON,java,servlets,Java,Servlets,如何在一个响应中从JavaServlet文件流和其他一些参数(例如JSON)返回?我相信这是可以实现的,因为我们从servlet字节流返回,它可以包含文件流和JSON流。但我认为自己尝试解析这样的请求很容易出错,所以我需要一些库来解析响应参数。我不想提出两个单独的要求 您可以使用多部分。一部分用于JSON,另一部分用于其他内容 其原理是构建一个在同步/异步响应中返回的多部分。您可以使用多部分。一部分用于JSON,另一部分用于其他内容 其原理是构建一个在同步/异步响应中返回的多部分。您可以将其全部

如何在一个响应中从JavaServlet文件流和其他一些参数(例如JSON)返回?我相信这是可以实现的,因为我们从servlet字节流返回,它可以包含文件流和JSON流。但我认为自己尝试解析这样的请求很容易出错,所以我需要一些库来解析响应参数。我不想提出两个单独的要求

您可以使用多部分。一部分用于JSON,另一部分用于其他内容


其原理是构建一个在同步/异步响应中返回的多部分。

您可以使用多部分。一部分用于JSON,另一部分用于其他内容


其原理是构建一个在同步/异步响应中返回的多部分。您可以将其全部作为JSON返回,在base64中对二进制流进行编码,并将其包含在JSON响应中。它不一定有效,但取决于所涉及的大小。

您可以将其全部作为JSON返回,在base64中对二进制流进行编码,并将其包含在JSON响应中。它不一定是高效的,但它取决于所涉及的大小。

根据Java文档

  • 要在MIME正文响应中发送二进制数据,请使用getOutputStream()返回的ServletOutputStream
  • 要发送字符数据,请使用getWriter()返回的PrintWriter对象
  • 要混合二进制和文本数据,例如,要创建多部分响应,请使用ServletOutputStream并手动管理字符部分
因此,您可以在处理响应时将输出流和提取结合起来。

根据Java文档

  • 要在MIME正文响应中发送二进制数据,请使用getOutputStream()返回的ServletOutputStream
  • 要发送字符数据,请使用getWriter()返回的PrintWriter对象
  • 要混合二进制和文本数据,例如,要创建多部分响应,请使用ServletOutputStream并手动管理字符部分
因此,您可以在处理响应时将输出流和提取结合起来