Отправка Http запросов с клиента на Kotlin(android)
Цель - при клике на Button отправить http запрос с методом GET на локальный сервер. После двух вечеров с бубнами вышло что то вроде этого:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val reqButton: Button = findViewById(R.id.reqbutton)
reqButton.setOnClickListener {
lifecycleScope.launch {
val result = makeRequest()
println(result)
}
}
}
private suspend fun makeRequest(): HttpStatusCode {
val client = HttpClient(CIO)
val response: HttpResponse = client.get("http://localhost:8080")
println(response.status)
return response.status
}
}
Для создания http клиента воспользовался библиотекой io.ktor. Ну и собственно после клика по кнопке программа завершается с ошибкой: java.net.ConnectException: Connection refused ...
И если не трудно, в дополнение посоветуйте, что лучше использовать для работы с http. А также хорошие практики по построению архитектуры Http клиента
Источник: Stack Overflow на русском