retrofit2.HttpException: Android中的HTTP 302



我正在努力解决这个问题几个小时前,我正试图使用此代码使用改造调用API

interface HTTPService {
@GET("/v1/breeds")
suspend fun getbreeds():BreedList
}
class Retrofitclass {
companion object{
val BaseURL = "https://docs.thedogapi.com"
fun getRetroInstance(): Retrofit {
val gson = GsonBuilder()
.setLenient()
.create()
return Retrofit.Builder()
.baseUrl(BaseURL)
.addConverterFactory(GsonConverterFactory.create(gson))
.build()
}
}
}

In view Model:

fun makeApiCall(){
viewModelScope.launch(Dispatchers.IO){
//  try {
val retroinstance = Retrofitclass.getRetroInstance().create(HTTPService::class.java)
val response = retroinstance.getbreeds()
print("responce"+ response  )
selectdatalist.postValue(response)
// }  catch (e: Exception) {
// print("error"+e.printStackTrace())
// }
}
}

任何帮助或建议,我试图添加这些代码在构建。Gradle但是什么都不适合我:

compile 'com.squareup.retrofit2:retrofit:2.0.0-SNAPSHOT'
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta3'
compile 'com.squareup.okhttp3:okhttp:3.0.1'

回调方法的改进

class Retrofitclass {
companion object{
val BaseURL = "https://docs.thedogapi.com"
fun getRetroInstance(): Retrofit {
val gson = GsonBuilder()
.setLenient()
.create()
return Retrofit.Builder()
.baseUrl(BaseURL)
.addConverterFactory(GsonConverterFactory.create(gson))
.build()
}
}

}

interface HTTPService {
/**
*DataClass your class the of data what represent of data request of Api
/*
@GET("/v1/breeds")
suspend fun getbreeds(): Call<DataClass>

}

fun getApiBreeds {
val retrofitClient = Retrofitclass.getRetrofit(PATH)
val endPoint = retrofitClient.create(HTTPService::class.java)
val callback = endPoint.getbreeds()
callback.enqueue(object : Callback<DataClass> {
override fun onResponse(
call: Call<DataClass>,
response: Response<DataClass>
) {
if (response.isSuccessful) {
Log.d("Response", response.body().toString())
}
}
override fun onFailure(call: Call<DataClass>, t: Throwable) {
t.printStackTrace()
}
})

}

//example DataClass

数据类var title:字符串val状态:字符串,) {}

的依赖性
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'

In ViewModel:

fun makeApiCall(){
viewModelScope.launch(Dispatchers.IO){
getApiBreeds()
}

最新更新