带有Fuel的http请求

时间:2019-03-31 08:57:25

标签: android kotlin

我正在尝试使用Android kotlin中的Fuel库进行HTTP请求,并且想同步请求。但是我无法使用以下代码获取数据。有人知道为什么吗?或Fuel库没有同步功能?

val hoge = "https://xxxxx.com/id/1".httpGet().response()
println(String(hoge.third.component1()))

1 个答案:

答案 0 :(得分:0)

燃料可以以同步方式执行请求。您的代码非常好,对我有用。 确保您的服务器正常运行,并且如果您在android上,则已向AndroidManifest.xml添加了必要的权限。

<uses-permission android:name="android.permission.INTERNET" /> 

除此之外,您的代码可以得到改进。请注意,response()类的Request方法将使您ByteArray。如果您需要字符串,则应使用:

"https://xxxxx.com/id/1".httpGet().responseString()
println(hoge.third.component1())

Fuel库的最新版本使您可以使用Kotlin协程以更好的方式进行操作。您可以将函数标记为暂停并调用awaitString()。在获得响应之前,该线程将被阻塞。

"https://xxxxx.com/id/1".httpGet().awaitString()
println(hoge)