如何使用Fuel建立HTTP请求的代理

时间:2019-12-09 17:34:01

标签: kotlin fuel

我正在使用restTemplate,这是我的方法:

    fun fetchAvailableCars(): Aggregations? {
        val availableCarsUrl = UriComponentsBuilder
            .fromHttpUrl(getCatalogUrl())
            .query("aggsBy={aggregators}")
            .buildAndExpand("brand,model")
            .toString()

        return restTemplate.getForEntity(availableCarsUrl, Aggregations::class.java).body
    }

我正在尝试使用Fuel来做基本相同的事情(但要处理错误),但是我找不到简单的方法来做到这一点。

这是我到目前为止所拥有的:

fun fetchAvailableCarsWithFuel() {
        val availableCarsUrl = UriComponentsBuilder
            .fromHttpUrl(getCatalogUrl())
            .query("aggsBy={aggregators}")
            .buildAndExpand("brand,model")
            .toString()

        Fuel.get(availableCarsUrl)
            .responseObject<Aggregations> { _, _, result ->
                when (result) {
                    is Success -> {
                        result.get()
                    }
                    is Failure -> {
                        // log.error
                    }
                }
            }
    }

但是没有简单的方法可以从lambda内部返回尸体。常用的方法有哪些?

P.S .:我正在使用Fuel-jackson反序列化响应

0 个答案:

没有答案