问题标签 [twitter-finagle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
687 浏览

scala - Finagle 快速入门客户端

我有一个已添加的裸 sbt 项目"com.twitter" %% "finagle-http" % "6.33.0"。我正在关注 Twitter Finagle 的快速入门指南。我的代码是直接复制粘贴:

没有“ modification 2”,我根本没有输出。加上这个println,我得到

  1. 为什么没有“ modification 2”的响应打印?
  2. 为什么没有contentString打印出" modification 1"?

如果我在“”上设置断点,并使用当前状态modification 1进行评估,则网站的 HTML 将根据需要返回。resp.contentString

如何在程序正常运行时打印它?

0 投票
1 回答
48 浏览

java - 在 Collection 上调用异步操作

我有一个对象集合。我必须在这个返回 Future 的对象集合上调用一个方法。现在我使用get()on Future 以使操作同步。如何将其转换为异步?

0 投票
0 回答
974 浏览

unit-testing - 单元测试 - 存根或模拟 finagle 客户端

这是我想对不同的 http 响应代码进行单元测试的几行代码。其中之一是代码 201 。请指教

0 投票
1 回答
28 浏览

scala - 覆盖 RootMonitor

我在 Future.respond 中运行了一些代码,由于错误,它会引发 NPE。问题是我的单元测试完全错过了它,并且都愉快地通过了,因为 NPE 被 RootMonitor 吞噬了。

所以,我的问题是,是否有任何方法可以覆盖单元测试的 RootMonitor 行为以导致测试失败而不是吞下异常?

我知道,我可以在响应中捕获异常,但这有点倒退——如果我认为可能存在异常,我会首先修复它。这正是我希望我的测试捕捉到的一种情况。

所以,我正在寻找的是一种为测试全局覆盖 RootMonitor 的方法,或者以某种方式断言它在测试完成后没有处理任何异常。有没有办法做这样的事情?人们通常如何处理这种测试?

0 投票
1 回答
155 浏览

scala - 无法找到正确的 SBT 依赖项

今天是我和芬奇在一起的第一天。我无法为 finch 和 finagle 找到正确的 SBT 依赖项集。

我已经尝试了所有依赖项,如图 2 所示

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
836 浏览

scala - 如何创建和测试上传文件服务

我正在尝试与 Finch 合作。Scala 和 Finch 的新手我想知道如何创建和测试文件上传服务。目标 - 上传文件并读取文件内容

0 投票
0 回答
92 浏览

finagle - 编写可测试的 Finagle 解析器

我想正确测试 Finagle Resolver。

让我们获取一个示例代码:

使用静态工厂使我无法对解析器进行单元测试。

据我所知,向 Finagle 提供解析器的唯一方法是将其声明com.twitter.finagle.ResolverMETA-INF/services. 因此,我自己无法提供实例。

鉴于这些限制,如何将解析器设计为:

  • 能够提供一个实例delegate
  • 或者能够正确测试行为(并模拟委托)?
0 投票
1 回答
640 浏览

scala - 如何将请求参数指定为 Json 类型

我正在创建一个需要 Json 的 Finch 端点。

URL - LogBundles/Long JSON 消息/进程

我正在使用 json4s 库进行 Json 解析

如何将正文指定为 json 类型或者如何在 LogBundles 和 Process 之间传递 Json 值?

我不能做 body.as[case class] 因为我不知道 Json 的确切结构。我只会在解析时寻找一个特定的键。

代码

错误

找不到参数 d 的隐式值:io.finch.Decode.Aux[A,CT] [error] val bundleProcessEndpoint: Endpoint[String] = put("LogBundles" :: body :: "Process" ) { id:JsonInput =>

0 投票
1 回答
218 浏览

scala - 你能在 sbt 中定义一个依赖别名吗

最近Finagle 库开始依赖于libthriftas的自定义分支"com.twitter" % "libthrift"。常规的是"org.apache.thrift" % "libthrift". 两者都在同一个包中包含相同的类。

虽然可以手动清理类路径,但未来可能并非每个开发人员都会意识到这一点——尤其是通过瞬态依赖项。

我们开发了一个内部 SBT 插件,我们所有的项目都在使用它,它可以用于共享设置。我正在寻找一种巧妙的方法来告诉 SBT,依赖关系只是一个别名。在依赖关系解析期间,理想情况下,它将两个 ModuleID 视为具有相同的组织(别名)。

0 投票
2 回答
366 浏览

scala - 在 finagle 中控制 /health 端点

我正在尝试覆盖健康端点。我需要让它返回其他东西然后“确定”。如文档中所述,我应该使用 Lifecycle.Warmup 特征。两者都不

覆盖方法也没有帮助。

下面的代码也无济于事。

我应该怎么做才能更改此消息?

UPD:另一种方法应该有效,但它没有

我调试,我看到它已添加到 Muxer,我看到它也出现在日志中。不知道为什么它不起作用

日志