java - 如何序列化字节数组以作为 HTTP POST 的正文发送?
问题描述
如何正确序列化 Java 字节数组以在 POST 请求的正文中发送?
简单地调用该方法是否正确toString()
?
具体来说,我正在用 gzip 压缩一个字符串,存储在一个byte[]
数组中,序列化,然后发送到一个 http POST 端点。泰。
编辑:对于后代,我使用的是java.net.http.HttpRequest
库,它为各种体型提供了不同的方法;例如:
HttpRequest.BodyPublishers.ofByteArray(msg_byte_arr)
HttpRequest.BodyPublishers.ofString(msg_str)
解决方案
一个 byte[] 数组已准备好作为 POST 请求直接发送 - 你应该有一个.getOutputStream()
方法,它可以为你提供一个输出流(确保使用 try-with-resources 保护它)。调用它的.write()
方法。不要ObjectOutputStream
在评论中使用建议。
推荐阅读
- graphql - 从 Prisma2 的辅助表中获取数据
- javascript - 谷歌折线图日期格式
- javascript - 如何记录仅在 .call() 中使用的函数
- jquery - 将两个带有输入字段的数组合并在一起
- android - 在webview android中缓存一组网页
- sql-server - 使一列的数据类型成为另一列的类型?
- opengl - 使用 SharpGL 绘制光标位置的延迟
- flutter - 在饼图颤动中更改值时出现问题
- oracle-cloud-infrastructure - 如何在 oracle oci java sdk 中运行初始化脚本来创建 vm
- huawei-mobile-services - 调用AchievementsClient.getAchievementList接口获取成就返回结果码7002