Я начинаю с разработки Android с Kotlin. Я пытаюсь использовать Volley для чтения API и обновления элементов GUI. Я заставил его работать с StringObjectRequests
, использующим метод http GET, теперь моя проблема в том, когда я хочу использовать метод POST.
Вот моя основная функция:
fun volley() {
val queue = Volley.newRequestQueue(this)
val url = "http://x.x.x.x/api.php"
val json = JSONObject()
json.put("ciudad", "Londres")
json.put("nombre", "Luis")
val stringRequest = JsonObjectRequest(Request.Method.POST,
url, json,
Response.Listener<JSONObject> { response ->
taContenido.setText(response.toString())
},
Response.ErrorListener {
taContenido.setText("No Funcionó")
})
queue.add(stringRequest)
}
Код в «API» довольно прост ...
<?php
$j = array('ciudad' => $_POST["ciudad"],
'nombre' => $_POST["nombre"]);
echo json_encode($j);
Моя проблема в том, что когда я запускаю функцию, она проходит через часть ErrorListener
и показывает «Нет функции». Я понятия не имею, почему. Конечно, если я попробую свой API с Почтальоном, он выдаст ожидаемое {"ciudad":"Londres","nombre":"Luis"}
Итак, как я могу увидеть, что сервер возвращает, каким бы он ни был, при использовании JsonObjectRequest
?
Если я изменю Запрос на StringRequest, конечно, я смогу увидеть ошибки PHP (поскольку не будет определено $ _POST []: |