我只想访问reactor netty项目中的Http内容。但结果为空。
代码如下。
DisposableServer server =
HttpServer.create()
.host("localhost")
.port(8000)
.route(routes ->
.post("/echo",
(request, response) ->
{ request.receive()
.retain()
.aggregate()
.asString()
.subscribe(System.out::println);
return response.sendString(Mono.just("hello"));})
.bindNow();
我无法在控制台中获得结果。
我可以像在代码中一样访问请求吗?有人能帮忙吗?谢谢。
您在接收到请求数据之前返回响应,因此反应器Netty将在发送响应后删除收到的任何传入数据。
我不知道您的用例,但将示例更改为以下内容,您将能够看到传入的数据:
DisposableServer server =
HttpServer.create()
.host("localhost")
.port(8000)
.route(routes ->
routes.post("/echo",
(request, response) ->
response.sendString(request.receive()
.retain()
.aggregate()
.asString()
.flatMap(s -> {
System.out.println(s);
return Mono.just("hello");
})))
)
.bindNow();
问题内容: 为什么数据存储Redis具有发布/订阅功能?我首先想到的是实现这样的事情是错误的层。但也许我需要跳出框框思考。 问题答案: Redis被定义为数据结构服务器。Redis提供了多种功能,例如内存缓存,队列,发布订阅等。这对于cloudapp / webstack非常有用,其中3个组件RabbitMQ(排队)+ XMPP(发布订阅)+内存缓存目前可以用redis代替。排队功能不如Rabbi
我正在学习RxJava。我订阅了一个长时间运行的回调作为可观察回调,并希望看到执行onNext回调: 我希望打印输出“6”,但该方法在此之前完成。 如果我没有在IO调度程序上订阅,那么调用将被阻止,并且我确实看到打印的输出。 我的问题是,如果在IO调度程序上运行,为什么不执行回调。我知道test()方法已终止,但尚未释放对订阅回调的引用。
1.使用者角度 为企业、组织或个人提供一种信息传播方式,用对口的内容达成企业、组织与成员之间的沟通和知识传播。体现在为用户提供内容服务,传达各类资讯,用户订阅后,可在轻推客户端定期接收到内容资讯的推送 2.开发者角度 主要通过会话的形式为用户提供服务,用户在协同界面点击订阅号图标后,可直接进入与订阅号的聊天界面,开发难度低,支持在后台定制菜单,通过菜单引导用户到不同的去处。通知消息会被折叠在订阅消
通过选择,,和,我创建了一个全新的Spring初始化项目。 我做了一个小项目: 我试着将三个人保存到数据库中。保存方法只返回需要执行的Mono。如果我尝试通过简单的订阅来执行它,一切都很好: 但是,当我使用而不是时,应用程序挂起: 如果我手动查询数据库,我会看到Jim已被保存,但Jack和John未被保存。 这是窃听器,还是我做错了什么?我希望在代码进一步发展之前保证用户在数据库中,所以我真的很想
在什么情况下Spring webflow会进行订阅?我在任何地方都读到必须有订阅,否则不会发生任何更改。在我使用Spring Webflow的短暂时间里,我从未在控制器或服务中见过。 我的疑问还在于,在使用flatMap时,。。。等订阅在什么时候进行? 我所读的并不能真正解决我的疑虑。 我知道这是一个异步问题,但每个flatMap都同时运行?。。。所以有时候我注意到一些数据是空的。
我试图理解可观察对象是如何执行的,但似乎无法让这个简单的代码正常工作。 不应该是你好。订阅()执行?