I'm developing an Android App with Retrofit2 and Kotlin. When I try request to API with GET method with Access Token as Header, the API show me this message: "Unauthorized" (code: 401).
My code is this:
interface:
@GET("list/{list_id}")
fun getList(
@Header("Authorization") auth: String,
@Path("list_id") list_id: Int,
@Query("page") page: Int,
@Query("api_key") api_key: String,
@Query("language") language: String,
@Query("sort_by") sort_by: String
): Call<List>
request:
private val url = "https://api.themoviedb.org/4/"
fun retrofit(): API {
val retrofit = Retrofit.Builder()
.baseUrl(url)
.addConverterFactory(GsonConverterFactory.create())
.build()
return retrofit.create(API::class.java)
}
class:
val call = request.retrofit().getList("Bearer " + token, 1, "", "", "", "")
call.enqueue(object : Callback<List> {
override fun onResponse(call: Call<List>, response: Response<List>) {}
override fun onFailure(call: Call<List>, t: Throwable) {}
})
فیلم و نمایش تلویزیونی را نمیتوانید پیدا کنید؟ به سیستم وارد شوید تا آن را ایجاد کنید.
آیا میخواهید به این مورد امتیاز دهید یا به فهرست اضافه کنید؟
عضو نیستید؟
پاسخ توسط Travis Bell
در تاریخ ژوئن 14, 2019 ساعت 10:15 ق.ض
If you're specifying a valid
Authorization
header, try removing theapi_key
query param. I don't think it will work with both specified.