从我的具有路由URL的路由垂直节点,我想将RoutingContext对象发送到另一个垂直节点。我相信我们只能使用vertx.eventBus().send()将消息从路由垂直节点发送到其他操作垂直节点。是否可以将RoutingContext对象作为消息发送?
在路由器纵向测试中,我正在执行vertx.eventBus().<RoutingContext>send("address", routingContext)
在消费者领域,我正在做vertx.eventBus().<RoutingContext>consumer("address").handler(message -> { RoutingContext routingContext = message.body(); LOGGER.info("routingContext body = "+routingContext.getBodyAsString()); });
但是看起来vertx本身并不能执行' vertx.eventBus().send‘,有人能告诉我如何使用vertx.eventBus().send方法发送RoutingContext对象吗?
发布于 2019-08-17 05:23:54
例如,如果您想通过Vert.xJava发送对象,而该对象不是JsonObject或String之类的纯EventBus对象,则需要实现您自己的编解码器。
这意味着基本上描述了您想要传输对象的哪些部分。
您可以在此处查看实现自定义编解码器的示例:
在我看来,为RoutingContext实现它仍然没有多大意义。只传输您实际需要的部分,而不是整个对象。
https://stackoverflow.com/questions/57513150
复制相似问题