首页 > 解决方案 > 如何序列化字节数组以作为 HTTP POST 的正文发送?

问题描述

如何正确序列化 Java 字节数组以在 POST 请求的正文中发送?

简单地调用该方法是否正确toString()

具体来说,我正在用 gzip 压缩一个字符串,存储在一个byte[]数组中,序列化,然后发送到一个 http POST 端点。泰。

编辑:对于后代,我使用的是java.net.http.HttpRequest库,它为各种体型提供了不同的方法;例如:

HttpRequest.BodyPublishers.ofByteArray(msg_byte_arr)
HttpRequest.BodyPublishers.ofString(msg_str)

标签: javaarrayshttppostgzip

解决方案


一个 byte[] 数组已准备好作为 POST 请求直接发送 - 你应该有一个.getOutputStream()方法,它可以为你提供一个输出流(确保使用 try-with-resources 保护它)。调用它的.write()方法。不要ObjectOutputStream在评论中使用建议。


推荐阅读