我试着体验SmallRye变体Vertx绑定,完整示例代码可以在我的Github上找到。
像这样组装路线的时候。
router.get("/posts/:id").produces("application/json")
.handler(handlers::get);
//.failureHandler(frc -> frc.response().setStatusCode(404).end());failureHandler将阻止请求。
发布于 2021-07-20 07:54:51
这里的问题是end返回一个Uni对象。你可以把它看作是一个函数。这个函数很懒。相反,你想要做的是调用这个函数。这可以通过订阅它来实现。
如果您对处理此Uni的结果不感兴趣,可以使用endAndForget代替end,后者将为您调用该函数(订阅Uni)。
如果您想使用Uni的结果做一些事情,您可以订阅:
.failureHandler(frc ->
frc.response()
.setStatusCode(404)
.end()
.subscribe().with(ignore -> System.out.println("failure handler is done"))
);https://stackoverflow.com/questions/68449635
复制相似问题