Я пытаюсь подключить мой REST API с локального хоста к приложению Android.
Я использую xampp в качестве моего сервера Apache на моей Windows. Остальные API работают правильно, когда я пытаюсь получить с моего компьютера по этой ссылке через Почтальон:
http://127.0.0.1/RightBoard/Web/right-board/public/api/login
На устройстве Android я пытаюсь получить ответ с Volley. и это мой код:
fun post(url: String, params: MutableMap<String, String>, listener: ResponseListener, token: String = "") {
val request = object : StringRequest(
Request.Method.POST,
url,
Response.Listener<String> {
listener.onResponseReceived(JSONObject(it))
},
Response.ErrorListener {
it.printStackTrace()
if (it.networkResponse?.data != null) {
val json = JSONObject(it.networkResponse.data.toString(Charsets.UTF_8))
Log.e(Keys.TAG, json.toString())
}
}
) {
override fun getParams(): MutableMap<String, String> {
return params
}
override fun getHeaders(): MutableMap<String, String> {
val headers = HashMap<String, String>()
headers["Authorization"] = "Bearer $token"
return headers
}
}
request.retryPolicy = DefaultRetryPolicy(
10000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT
)
VolleySingleton.instance?.addToRequestQueue(request)
}
URL-адрес http://192.168.1.107/RightBoard/Web/right-board/public/api/login
, и я получаю IP="192.168.1.107"
от ipconfig
. но теперь я получаю эту ошибку:
java.net.ConnectException: failed to connect to /192.168.1.107 (port 80) after 10000ms: isConnected failed: EHOSTUNREACH (No route to host)
Я проверил, что и телефон, и компьютер находятся в одном и том же Wi-Fi. Я запускаю приложение в другом телефоне. Я даже попытался перезагрузить компьютер и xampp ... но одна и та же ошибка каждый раз.
Я также использовал разрешение в своем приложении:
<uses-permission android:name="android.permission.INTERNET"/>