无法访问 OKHTTP GET 请求中的 JSON 正文
Can't access JSON body in OKHTTP GET request
fun fetchJson(){
val request = Request.Builder()
.url("https://covid-193.p.rapidapi.com/statistics?country")
.get()
.addHeader("x-rapidapi-key", "mykey")
.addHeader("x-rapidapi-host", "covid-193.p.rapidapi.com")
.build()
val client = OkHttpClient()
client.newCall(request).enqueue(object: Callback{
override fun onFailure(call: Call, e: IOException) {
println("Failed to fetch data")
}
override fun onResponse(call: Call, response: Response) {
val body = response?.body()?.string()
println(body)
}
})
}
我正在尝试从 API 中获取一些数据并将其显示在我的应用程序中。在给定的代码中,response?.body()?string() android studio 以红色突出显示 body() 部分。我无法从 API 访问 json 数据。我该如何解决这个问题?
我认为您的问题是因为尝试将 body
作为函数而不是变量来调用?当我的正文行为:
时,我不会产生任何错误
val body = response.body?.string()
(就其价值而言,AS 还表示 response
上的 ?
是不必要的)。
fun fetchJson(){
val request = Request.Builder()
.url("https://covid-193.p.rapidapi.com/statistics?country")
.get()
.addHeader("x-rapidapi-key", "mykey")
.addHeader("x-rapidapi-host", "covid-193.p.rapidapi.com")
.build()
val client = OkHttpClient()
client.newCall(request).enqueue(object: Callback{
override fun onFailure(call: Call, e: IOException) {
println("Failed to fetch data")
}
override fun onResponse(call: Call, response: Response) {
val body = response?.body()?.string()
println(body)
}
})
}
我正在尝试从 API 中获取一些数据并将其显示在我的应用程序中。在给定的代码中,response?.body()?string() android studio 以红色突出显示 body() 部分。我无法从 API 访问 json 数据。我该如何解决这个问题?
我认为您的问题是因为尝试将 body
作为函数而不是变量来调用?当我的正文行为:
val body = response.body?.string()
(就其价值而言,AS 还表示 response
上的 ?
是不必要的)。