函数在kotlin返回值结束之前Fuel.post

我有一个Fuel.post函数,返回Fuel.post结束前的值,这是代码…

var res = rs.requestLogin("user", "password") 

和我的function

 fun requestLogin(user : String, pass : String) : String { var res = "" val _params = HashMap() _params.put("user", user) _params.put("pass", pass) Fuel.post(Constantes.ENDPOINT_LOGIN, _params.toList()) .responseString(Charset.forName("UTF8")){ request, response, result -> when (result) { is Result.Success -> { res = "0" } is Result.Failure ->{ res = "-1" } } } return res } 

我使用这个lib: https : //github.com/kittinunf/Fuel
如何在Fuel.post结束时返回res值?

One Solution collect form web for “函数在kotlin返回值结束之前Fuel.post”

很明显,你正在使用该调用的异步版本。 通过将这个lambda传递给responseString() ,你告诉它它需要这个代码来处理这个响应,如果这个响应在未来某个时候回来的话,这个异步的。

我怀疑如果你使用阻塞版本 ,你可能会得到你的结果。

完全未经validation的代码:

 val (request, response, result) = Fuel.post(Constantes.ENDPOINT_LOGIN, _params.toList()) .responseString() return if(result == Result.Success) "0" else "-1" 
  • 在kotlin的片段
  • 如何设置Kotlin的财产价值
  • Android中的Kotlin协程:为什么要使用Anko中的bg()而不是async()?
  • 智能投射到kotlin.String
  • Kotlin-android:未解决的引用数据绑定
  • 图像存在,不为空,但我得到一个NullPointerExceptionexception
  • Android系统。 设置textSize所以它的高度匹配它的父布局高度的百分比 - 可能吗?
  • 如何用kotlin @Parcelize使用null
  • 使用kotlin编译android项目时出错
  • 预期的typesID资源
  • 如何在Kotlin(Android)的日期选择器对话框中仅显示日期和月份?
  • Kotlin language will be the best programming language for Android.