Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
 
masterbill
0 / 0 / 0
Регистрация: 02.03.2016
Сообщений: 24
#1

Отправка POST - Программирование Android

04.03.2016, 17:04. Просмотров 714. Ответов 26
Метки нет (Все метки)

Дайте пожалуйства рабочий пример отправки POST запроса на сервер. ПЕрекопал пол интернета не чего не работает из примеров. Версия от Android 4.0 спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2016, 17:04     Отправка POST
Посмотрите здесь:

Отправка POST запроса - Программирование Android
Добрый день! столкнулся с проблемой, не могу отправить пост запрос, сваливаюсь на OutputStream os = con.getOutputStream(); в query...

Отправка POST запроса - Программирование Android
Здравствуйте! Решил попробовать написать приложение на Android. Задачу поставил такую, что надо отправить с android-а на сервер post...

Отправка POST запроса - Программирование Android
Здраствуйте, нужно на сайт отправить пост запрос з логином і паролем, потом сайт оддаст строку, ее нужно вивсти в текствів, у меня есть код...

Отправка post запросов на сервер - Программирование Android
доброго, имеется программа на пк и хочу сделать аналог для андроида, но в андроиде я не силен, в общем нужно три формы логин, веббровсер и...

Отправка POST запроса серверу - Программирование Android
Здравствуйте. Пишу приложение для Android, которое получает данные о местонахождении и отправляет их на Web-сервер. Данные о...

Не работает отправка POST запроса - Программирование Android
try{ HttpClient httpclient = new DefaultHttpClient(); //YOUR PHP SCRIPT ADDRESS HttpPost httppost...

Отправка Post запроса в Android предложении - Программирование Android
Есть определенная php страница надо отправить на нее Post запрос из Android приложения Например на такую страниц...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
18.05.2016, 12:21     Отправка POST #21
Java
1
2
3
4
5
6
7
8
9
10
11
12
                OkHttpClient client = new OkHttpClient();
                Request request = new Request.Builder()
                        .url("http://alfa-lotos.ru/banana/auth.php")
                        .addHeader("disp_id", "ololo")
                        .build();
                try {
                    Response response = client.newCall(request).execute();
                    Log.i("***", "" + response.message());
                    Log.i("***", "" + response.body().string());
                } catch (IOException e) {
                    e.printStackTrace();
                }
естественно этот запрос надо делать в отдельном потоке + разрешение на INTERNET в манифесте
выводит в консоль
Bash
1
2
OK
</html>
Добавлено через 8 минут
хотя, правильнее наверное будет так
Java
1
2
3
4
5
6
7
8
                RequestBody formBody = new FormBody.Builder()
                        .add("disp_id", "ololo")
                        .build();
                OkHttpClient client = new OkHttpClient();
                Request request = new Request.Builder()
                        .url("http://alfa-lotos.ru/banana/auth.php")
                        .post(formBody)
                        .build();
Smart-Ex
0 / 0 / 0
Регистрация: 17.05.2016
Сообщений: 6
18.05.2016, 12:36     Отправка POST #22
Цитата Сообщение от Паблито Посмотреть сообщение
выводит в консоль

OK
</html>
А почему не "-=ERROR=-" ? Ведь при таком запросе сервер вернет "-=ERROR=-".
Сейчас буду проверять.
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
18.05.2016, 12:41     Отправка POST #23
я пробовал POSTMAN-ом слать запросы, возвращает error при лобых раскладах - хоть в шапке передавать параметр, хоть в теле

поэтому проверить 100% код не могу
Smart-Ex
0 / 0 / 0
Регистрация: 17.05.2016
Сообщений: 6
18.05.2016, 19:22     Отправка POST #24
Это потому, что сервер не находит ololo, а вот если передать F555U99H должен выдать несколько строк.

Добавлено через 6 часов 28 минут
Для начала решил просто проверить отправку запроса на сервер. Использовал код Паблито. Приложение вылетает.
Вот простенький код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    class DispatcherTask extends AsyncTask<Void, Void, Void> {
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            DispatcherName.setText("Проверка...");
        }
        @Override
        protected Void doInBackground(Void... params) {
            RequestBody formBody = new FormBody.Builder()
                    .add("disp_id", "olala")
                    .build();
            OkHttpClient client = new OkHttpClient();
            Request request = new Request.Builder()
                    .url("http://alfa-lotos.ru/banana/auth.php")
                    .post(formBody)
                    .build();
            try {
                Response response = client.newCall(request).execute();
               // пока просто без обработки
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }
        @Override
        protected void onPostExecute(Void result) {
            super.onPostExecute(result);
            DispatcherName.setText("Успешно!");
        }
    }
Надпись "Проверка" выводится, что означает что асинктаск запускается, onPreExecute отрабатывает, но потом крах.
Обработчик нажатия кнопки вызывающий асинктаск вроде стандартный:
Java
1
2
                    DispatcherTask CheckDispather = new  DispatcherTask();
                    CheckDispather.execute();
В манифесте указал:
Java
1
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Помогите
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
18.05.2016, 19:49     Отправка POST #25
android.permission.INTERNET
Smart-Ex
0 / 0 / 0
Регистрация: 17.05.2016
Сообщений: 6
19.05.2016, 16:06     Отправка POST #26
Цитата Сообщение от Паблито Посмотреть сообщение
android.permission.INTERNET
Cпасибо! Всё завелось и отлично работает!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2016, 19:10     Отправка POST
Еще ссылки по теме:

Отправка данных на сервер методом POST c AsyncTask - Программирование Android
Доброго времени суток. Возникла проблема с отправкой данных. Приложение запускается, не вылетает, но на сервер ничего не отправляет. Уже...

http Post - Программирование Android
Такая проблема. В пост запросе, в хидер добавляю httpPost.addHeader(&quot;Content-Length&quot;, count); и вываливается исключение : ...

Post запрос - Программирование Android
Как отправить Post запрос и принять ответ сервера ? Exlipce

POST запрос - Программирование Android
Существует активити &quot;Register&quot;, содержащий несколько элементов edittext. Пытаюсь передать текст из них в другой класс &quot;RestClient&quot;, чтобы...

POST Запрос - Программирование Android
подскажите что здесь не так, ошибка возникает на строке HttpResponse responsePOST = client.execute(post); public...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
19.05.2016, 19:10     Отправка POST #27
И чего вас всех так тянет библиотеки подключать какие-то...
Yandex
Объявления
19.05.2016, 19:10     Отправка POST
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru