Как получить авторизацию токена с помощью запроса Retrofit2? - PullRequest
0 голосов
/ 22 февраля 2019

Я пытаюсь сделать POST-запрос к серверу с помощью Retrofit 2 и получить токен авторизации для дальнейшей работы с сервером.код ответа = 400 ... логин и пароль хранятся в классе Login.Вот метод аутентификации сервера:

enter image description here

My MainActivity:

class MainActivity : AppCompatActivity() {

    val bulder = Retrofit.Builder()
        .baseUrl("https://tv-server.trinity-tv.net/server/TvServerService/")
        .addConverterFactory(GsonConverterFactory.create())

    val retrofit: Retrofit = bulder.build()
    val userClient: UserClient = retrofit.create(UserClient::class.java)


    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        login_btn.setOnClickListener { login() }
    }

    private fun login() {
        val login = Login("1", "2")
        val call: Call<User> = userClient.getLogin(login)

        call.enqueue(object : Callback<User> {

            override fun onResponse(call: Call<User>, response: Response<User>) {
                response.code()
                if (response.isSuccessful){
                    Toast.makeText(this@MainActivity, response.body()?.token, Toast.LENGTH_LONG).show()
                } else {
                    Toast.makeText(this@MainActivity, "ERROR", Toast.LENGTH_LONG).show()
                }
            }

            override fun onFailure(call: Call<User>, t: Throwable) {

            }
        })
    }
}

Мой интерфейс:

interface UserClient {

    @POST("Auth")
    fun getLogin(@Body login: Login) : Call<User>
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...