将字符串转换为 application/octet-stream Java
Convert String to application/octet-stream Java
我正在编写一个带有嵌入码头的服务器端应用程序,该码头接收来自第三方客户端的一些请求。客户端上传一些小文件到服务器。但是我很惊讶地看到客户端没有将文件数据上传为 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);
我正在编写一个带有嵌入码头的服务器端应用程序,该码头接收来自第三方客户端的一些请求。客户端上传一些小文件到服务器。但是我很惊讶地看到客户端没有将文件数据上传为 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);