【问题标题】:How can I return a value from a retrofit response?如何从改造响应中返回值?
【发布时间】:2021-02-24 15:27:24
【问题描述】:

我正在尝试创建一个改造请求并从响应中返回值,但我不知道该怎么做。在 onReponse 函数中,我的列表包含正确的值,但是当我尝试返回它时,列表是空的。

这是我的功能:

 fun getFinancialDetailsService(mandatorGuid: String): List<FinancialDetails.FinancialDetailsItem> {
    val mandatorItem = MandatorItem(mandatorGuid)
    val guid: MutableMap<String, String> = HashMap()
    guid["guid"] = mandatorItem.guid


    val call: Call<FinancialDetails> = createAPI().getFinancialDetails(mandatorItem.guid)
    call.enqueue(object : Callback<FinancialDetails> {
        override fun onFailure(call: Call<FinancialDetails>, t: Throwable) {
            
        }

        override fun onResponse(call: Call<FinancialDetails>, response: Response<FinancialDetails>) 
            financialDetailsData = response.body()!!.data
            Log.i("TEST", "Financial Response: " + financialDetailsData.toString())
        }

    })
    Log.i("TEST", "Financial RETURN " + call.execute().body()!!.data.toString())
    return financialDetailsData
}

如果您有任何解决方案,请告诉我!谢谢!

【问题讨论】:

  • 试试this
  • 我真的无法理解它是如何工作的..

标签: android kotlin request retrofit retrofit2


【解决方案1】:

可能是因为在调用onResponse之前返回financialDetailsData

【讨论】:

    猜你喜欢
    • 2017-01-15
    • 2019-06-20
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 2017-07-30
    • 1970-01-01
    • 2023-03-18
    相关资源
    最近更新 更多