E / Ошибка: retrofit2.adapter.rxjava2.HttpException: HTTP 401 не авторизован в Kotlin Android - PullRequest
0 голосов
/ 05 сентября 2018

Это ответ, который я пытаюсь получить из API

{
    "success": {
        "id": 35,
        "otp": 9830,
        "msg": "Otp has sent on this number"
    }
}

Ответ работает абсолютно нормально при проверке в почтальоне. Однако, когда я пытаюсь получить тот же JSON, анализируя ответ в формате Hashmap в Android Kotlin, я получаю E / Ошибка: retrofit2.adapter.rxjava2.HttpException: HTTP 401 Unauthorized

Теперь это мой код Android Rxjava Kotlin, как показано ниже, где я передаю все необходимые параметры, но ответ переходит к блоку ошибок. Код выглядит следующим образом

override fun login(api_token: String, name: String, mobile: String, lat: String, lon: String, address: String) {

      var subscribe = api.login(api_token,mobile.toInt(),lat.toDouble(),lon.toDouble(),address).subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe({ list: LoginParentResponseModel? ->
                    Log.i("login",list!!.toString())
                    view.showProgress(false)
                    view.loadLoginSuccess(list!!.success)
                }, { error ->
                    view.loadLoginFailure("loginfailed")
                    view.showProgress(false)
                    view.showErrorMessage("problen"+error.toString())


                })
        subscriptions.add(subscribe)


}

Теперь это класс Model для обработки ответов

data class LoginParentResponseModel(val success : Map<String,String>,val error : Map<String,String>)

Теперь это API и его параметры, которые хороши, как я использую в почтальоне

@FormUrlEncoded
    @POST("api/register?")
    fun login(@Field("api_token") id: String, @Field("mobile") mobile: Int,@Field("lat") lat: Double,@Field("lon") lon: Double,@Field("address") address: String): Observable<LoginParentResponseModel>

Пожалуйста, помогите мне решить эту проблему. Ваша помощь будет высоко ценится. Заранее спасибо

...