我有以下代码:
ApolloRequestObj obj = ApolloRequestObj.builder()
.api_key("3434")
.domains(List.of("test"))
.build();
// how to send the object as a request body?
RequestBody requestBody = RequestBody.create(
MediaType.parse("application/json"), json);
Request request = new Request.Builder()
.url(".......")
.post(requestBody)
.header("Content-Type", "application/json")
.header("Cache-Control", "no-cache")
.build();
请求对象:
@Getter
@Setter
@Builder
private class ApolloRequestObj {
public String api_key;
public List < String > domains;
}
当我用一些数据初始化对象时,我想将其与有效负载数据一起发送到远程主机。你知道我如何发送该对象吗?
如果您的目标是获取 POJO 并序列化为 Json,您可以配置 Jackson 的 ObjectMapper 来为您执行此操作。
这是一个简短的例子,
ObjectMapper objectMapper = new ObjectMapper();
var jsonString = objectMapper.writeValueToString(obj);
RequestBody requestBody = RequestBody.create(
MediaType.parse("application/json"), jsonString);
// rest of code here.
您需要根据您使用的依赖管理框架获取 Jackson 库。
如果您需要转义的 Json,您可以通过简单的字符串替换来添加转义的引号来完成此操作。