java - 将 String 转换为 application/octet-stream Java

标签 java json inputstream

我正在编写一个带有嵌入 jetty 的服务器端应用程序,该 jetty 接收来自第三方客户端的一些请求。客户端上传一些小文件到服务器。但令我惊讶的是,客户端没有将文件数据作为 application/octet-stream 上传,而是将 json 作为 application/json 上传,其中包含有关文件的所有元数据,并在字段中将所有数据作为字符串。举个简单的例子

{ "_id": "fruit", "name": "fruit", "_shasum": "4954f1f8b4a8cbf9ea6b675face476f030cf7fbb", "tarball": "http://localhost:8585/fruit/-/fruit-2.0.0.tgz", "_attachments": { "fruit-2.0.0.tgz": { "content_type": "application/octet-stream", "data": "mF6/622swKoG0kbVvS8qCyF5r48CuyiCO60Mcl/LnOyufzAEZ5xxxhn/IT4DO4Fr4QAMAAA=", "length": 545 } } }

现在的问题是我如何将它转换为 .tgz 文件?我无法更改客户端,所以我必须使用它。

最佳答案

刚刚使用 JSON 解析器获取了字符串

byte[] decoded = Base64.getDecoder().decode(data);
InputStream stream = new ByteArrayInputStream(decoded);

关于java - 将 String 转换为 application/octet-stream Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31130032/

相关文章:

java - 如何将有关使用 Opencv 进行模糊检测的代码从 C++ 转换为 Java

java - 如何在 Android 中从 JSON 数组获取任意字符串

php - 如何使用来自 PHP 的 jQuery/AJAX 调用遍历 JSON 数组?

java - 如何在不使用shell的情况下将多个文件提供给java中的命令行

node.js - 使用express的nodejs输入流

java - Java 中的协程

java - 在类似图形的对象中查找循环

java - 在浏览器中运行java-applet源代码

json - 在 React-Native 中为 FlatList 获取并分组 JSON 数据

java 。远程服务器返回 503 错误页面,其中包含一些文本。如何获取这段文字?