Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
AeroWhite
Форумчанин.NET
543 / 414 / 64
Регистрация: 12.02.2013
Сообщений: 834
1

Не приходит ответ при HttpPost

21.04.2014, 13:55. Просмотров 805. Ответов 4
Метки нет (Все метки)

Уже неделю мучаюсь с одной проблемой. Необходимо отправить запрос на сервер и получить ответ. Запрос, как я понимаю, проходит, однако ответ по какой-то причине не приходит.
Запрос с AsyncTask:
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
31
32
33
34
35
36
37
38
39
40
  class RequestTask extends AsyncTask<String, String, String> {
 
        @Override
        protected String doInBackground(String... params) {
 
                try {
                        DefaultHttpClient hc = new DefaultHttpClient();
                        ResponseHandler<String> res = new BasicResponseHandler();
                        HttpPost postMethod = new HttpPost(params[0]);
 
                        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                        nameValuePairs.add(new BasicNameValuePair("s", tvText.getText().toString()));
                        nameValuePairs.add(new BasicNameValuePair("per_pg", "100"));
                        postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        String response = hc.execute(postMethod, res);
                        respText.setText(response.toString());
                } catch (Exception e) {
                        System.out.println("Exp=" + e);
                }
                return null;
        }
 
        @Override
        protected void onPostExecute(String result) {
 
                dialog.dismiss();
                super.onPostExecute(result);
        }
 
        @Override
        protected void onPreExecute() {
 
                dialog = new ProgressDialog(FullscreenActivity.this);
                dialog.setMessage("Ищем...");
                dialog.setIndeterminate(true);
                dialog.setCancelable(true);
                dialog.show();
                super.onPreExecute();
        }
}
Вызываю так:
Java
1
2
3
4
5
6
        startButton.setOnClickListener (new OnClickListener() {
            @Override    
            public void onClick (View v) {
                            new RequestTask().execute("http://textpesni.org/");
            }
            });
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2014, 13:55
Ответы с готовыми решениями:

JSOUP POST. В ответ вместо JSon приходит разметка страницы с полями для ввода данных
Делаю пост запрос к апи сайта. Назад должен получить json, однако получаю...

HttpPost конфликтует с БД
Добрый вечер! Столкнулся со следующей проблемой, я имею два корректно...

Кодировка в httppost
Здравствуйте, имеется такая проблема. хочу отправить файл с параметром на свой...

HttpPost, формирование запроса
Добрый день. Помогите разобраться с отправкой такого запроса: { ...

HttpPost и PHP. Не подключается к MySQL
Есть у меня mysql сервер на localhost:88 с бд &quot;test&quot;, username &quot;root&quot; и...

4
YuraAAA
1578 / 1319 / 282
Регистрация: 25.10.2009
Сообщений: 3,436
Записей в блоге: 2
21.04.2014, 14:10 2
Лучший ответ Сообщение было отмечено AeroWhite как решение

Решение

AeroWhite, пробовали дебажить? Поставить брекпоинт на String response = hc.execute(postMethod, res); и посмотреть
1
NiRamz
211 / 211 / 33
Регистрация: 26.12.2010
Сообщений: 691
21.04.2014, 15:06 3
Лучший ответ Сообщение было отмечено AeroWhite как решение

Решение

Цитата Сообщение от AeroWhite Посмотреть сообщение
super.onPostExecute(result);
а куда вы отправляете результат? и не видно где вы его обрабатываете
1
AeroWhite
Форумчанин.NET
543 / 414 / 64
Регистрация: 12.02.2013
Сообщений: 834
21.04.2014, 16:54  [ТС] 4
Благодаря Вашим советам нашел-таки ошибку.
Я не возвращал ответ:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        @Override
        protected String doInBackground(String... params) {
 
                try {
                        DefaultHttpClient hc = new DefaultHttpClient();
                        ResponseHandler<String> res = new BasicResponseHandler();
                        HttpPost postMethod = new HttpPost(params[0]);
 
                        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                        nameValuePairs.add(new BasicNameValuePair("s", tvText.getText().toString()));
                        nameValuePairs.add(new BasicNameValuePair("per_pg", "100"));
                        postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                        String response = hc.execute(postMethod, res);
                        return response.toString();
                } catch (Exception e) {
                        System.out.println("Exp=" + e);
                }
                return null;
        }
И из-за этого же не выводил его:
Java
1
2
3
4
5
6
        @Override
        protected void onPostExecute(String result) {
 
                dialog.dismiss();
                respText.setText(result);
        }
0
NiRamz
211 / 211 / 33
Регистрация: 26.12.2010
Сообщений: 691
21.04.2014, 17:24 5
Цитата Сообщение от AeroWhite Посмотреть сообщение
И из-за этого же не выводил его:
совет, добавьте проверку на нулл в onPost, что бы когда произойдет ошибка не вывалилось приложение
0
21.04.2014, 17:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2014, 17:24

Не приходит ответ с сервера при POST-запросе
Здравствуйте. Пытаюсь через Java отправить POST-запрос на сервер (обычную...

Не приходит ответ от бд
$dbh = mysql_connect(HOST, USER, PSWD) or die(&quot;Не могу соединиться с MySQL.&quot;);...

Не приходит ответ от QNetworkAccessManager::get
Добрый день! Подскажите. Создаю приложение в котором нужно получать файлы с...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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