Я пытаюсь выполнить запрос POST от Android, чтобы вставить некоторую информацию в мой phpmyadmin
.
Что я использую
-
Slim
, чтобы выполнить соединение и запрос с базой данных, хранящейся в phpmyadmin. - XAMPP для имитации локального сервера.
- Volley для использования запросов от Android.
Функция Slim post не дает мне никаких проблем, потому что, если я использую ее в режиме POST
в приложении Postman, данные вставляются правильно в базу данных.
URL может принимать два параметра, разделенных косой чертой /
. Вот один пример:
http://localhost:8000/insert/Peter/25
в который я вставляю нового пользователя с именем Peter и 25 лет в базу данных.
Проблемы возникают, когда я пытаюсь вызывать один и тот же URL с Android с помощью Volley, потому что он всегда идет к методу onErrorResponse
.
Это код, который я должен использовать для запроса от Android:
RequestQueue queue = Volley.newRequestQueue(getContext());
String url = "http://localhost:8000/insert/" + name + "/" + age;
StringRequest postRequest = new StringRequest(Request.Method.POST, url,
new Response.Listener<String>()
{
@Override
public void onResponse(String response) {
Log.d("Response", "works well");
}
},
new Response.ErrorListener()
{
@Override
public void onErrorResponse(VolleyError error) {
Log.d("Response", "" + error.getMessage());
}
}
);
queue.add(postRequest);
Но он всегда идет к методу onErrorResponse
.
Что я проверил
- То, что компьютер, на котором работает XAMPP, находится в том же WIFI, что и смартфон.
- Это изменение локального хоста для IP-адреса моего компьютера также не изменяет результат.
UPDATE:
Я заметил, что я использовал IP-адаптер Ethernet вместо WIFI на URL-адресе.
Теперь я могу видеть на веб-странице браузера смартфона XAMPP по умолчанию, если я установил http://192.168.x.x
(IP моего WIFI) на url, но у меня все еще есть проблема, о которой я упоминал выше, потому что, если я устанавливаю http://192.168.x.x:8000/insert/Peter/25
, url не распознается с помощью смартфона.
Я думаю, что проблема может быть связана с тем, что я использую встроенный сервер PHP в качестве Slim documentation
. Я использую следующую команду:
php -S localhost:8000
поэтому я думаю, что проблема может быть сгенерирована здесь, но я не уверен, как ее решить.
Что мне не хватает?
Спасибо заранее!