1

我用 Finatra 实现了一个 API 服务器,我的 api 输出蛇案例 json,即;

case class A {
  val someProperty: String
}

val a = A("value")

a将在 json 中序列化,反之亦然

{"some_property":"value"}

但是我必须使用 camelcase json I/O 访问 3rd 方 API,它代表上面的对象

{"someProperty":"value"}

object MyClientModule extends HttpClientModule通过guice注射器得到。如何将杰克逊配置覆盖/更改为特定的 httpclient?

4

1 回答 1

0

HttpClientModule隐式使用FinatraObjectMapper. 尽管您可以配置FinatraObjectMapper为使用 camelCase 序列化/反序列化 JSON,但它会影响全局行为。HttpClient一种简单的方法是使用您的 camelCase 对象映射器显式地实例化。另一种方法是定义自定义 http 客户端及其提供程序模块。

于 2016-02-24T12:02:45.270 回答