java - Akka HTTP Java 客户端示例到 POST JSON msg
问题描述
如何使用 Akka HTTP 编写 Java HTTP 客户端,使用编组器发布 JSON 消息以将 POJO 转换为 JSON。我能找到的只是这样的例子:
HttpRequest req =
HttpRequest.POST("/user")
.withEntity(HttpEntities.create(
ContentTypes.APPLICATION_JSON,
"{\"some\": json}"
));
它对 JSON 进行硬编码,而不是使用编组器。
解决方案
您可以简单地使用任何 json 编组器代替硬编码字符串,它应该可以工作。下面我以杰克逊编组器为例。
class RequestProducer {
private ObjectMapper objectMapper;
public RequestProducer(ObjectMapper objectMapper) {
this.objectMapper = objectMapper;
}
HttpRequest post(SomePojo somePojo) {
return HttpRequest.POST("/user")
.withEntity(HttpEntities.create(
ContentTypes.APPLICATION_JSON,
objMapper.writeValueAsString(somePojo)));
}
}
推荐阅读
- c# - Visual Studio Pro 2019 16.8.4 - 脚本任务编辑器未在 SSIS 中打开
- .net - 当我将函数应用升级到 3.1 或创建 3.1 函数应用时,我收到以下错误消息
- css - CSS 后代选择器异常
- unity3d - 有没有办法让游戏对象的对撞机只响应捏合手势?
- java - 如何在我的桌面应用程序中获取当前地理位置?
- microservices - Zuul 转发错误,负载均衡器没有可供客户端使用的服务器
- batch-file - 批处理 cmd 不接受重定向符号
- android - Firebase API 密钥限制问题
- html - Bootstrap - 修复了正文中的侧边栏
- python - 基于 VIEWSTATES 从网页中抓取数据