当前位置: 首页 > 知识库问答 >
问题:

路由失败处理程序在SmallRye Mutiny Vertx绑定中被阻止

公羊喜
2023-03-14

我试着体验SmallRye Mutiny Vertx绑定,完整的示例代码可以在我的Github上找到。

当装配这样的路线时。

router.get("/posts/:id").produces("application/json")
            .handler(handlers::get);
            //.failureHandler(frc -> frc.response().setStatusCode(404).end());

故障处理程序将阻止请求。

共有1个答案

公羊伟志
2023-03-14

这里的问题是end返回一个Uni对象。你可以把它想象成一个函数。这个函数是懒惰的。你想做的是调用那个函数。这可以通过订阅它来实现。

如果您对处理此Uni的结果不感兴趣,可以使用endAndForget,而不是调用该函数(订阅Uni)。

如果您想对Uni的结果做些什么,您可以改为订阅:

java prettyprint-override">.failureHandler(frc ->
  frc.response()
    .setStatusCode(404)
    .end()
    .subscribe().with(ignore -> System.out.println("failure handler is done"))
);
 类似资料:
  • 我有一个spark流媒体工作,它从Kafka读取数据并对其执行一些操作。我正在一个纱线集群Spark 1.4.1上运行该作业,该集群有两个节点,每个节点有16 GB RAM,每个节点有16芯。 我已将这些conf传递给spark提交作业: --主纱线簇--num executors 3--驱动器内存4g--executor内存2g--executor cores 3 作业返回此错误并在运行一段时间

  • 可以使用路由绑定简化URL或者路由规则的定义,绑定支持如下方式: 绑定到模块/控制器/操作 把当前的URL绑定到模块/控制器/操作,最多支持绑定到操作级别,例如在路由配置文件中添加: // 绑定当前的URL到 index模块 Route::bind('index'); // 绑定当前的URL到 index模块的blog控制器 Route::bind('index/blog'); // 绑定当前的U

  • 问题内容: 有没有办法在单个函数调用上做到这一点? 就像是: 我知道这是一个语法混乱,但是只是为了给我一个我想实现的目标一个思路,一系列路由就很棒了! 有人知道怎么做吗? 问题答案: 我在寻找相同功能时遇到了这个问题。 @Jonathan Ong在上面的评论中提到,不建议将数组用于路径,但已在Express 4中对其进行了明确描述,并且它在Express 3.x中有效。这是尝试的示例: 从对象内部

  • 我有一个路由,它从FTP服务器读取,然后处理消息。该路由具有DeadletterChannel错误处理程序,当处理消息时引发异常时,它会将消息路由到某个bean。 现在,当错误处理程序处理异常时,Camel 假定所有内容都正常,并且仍然删除 FTP 文件。 如果我删除错误处理程序,Camel不会在出现异常时删除文件。 现在我的问题是,我如何有一个DeadletterChannel错误处理程序,同时

  • 但我想知道是否有一种方法可以先定义公共处理程序,然后一些路由可以定义另一个处理程序。谢谢

  • 我在学校里复习了教程https://developers.google.com/appengine/articles/wordpress 我有一个网站和运行,但我不能达到任何网址,包括wp-admin。 下面的处理程序是按照本教程设置的。 日志显示此错误: 2013-11-16 17:03:26.656/wp admin/500 41ms 0kb Mozilla/5.0(X11;Linux x86