26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
1

Составление http запроса

03.07.2012, 18:42. Показов 2627. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужен запрос в котором передаются логин и пароль, и затем выводятся данные уже авторизованного пользователя, например страница либо информация со страницы
только начал осваивать, но разобраться трудновато, помогите
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.07.2012, 18:42
Ответы с готовыми решениями:

SQLite. Составление запроса с исключением элемента
Здравствуйте. Во время работы с SQLite DB заметил, что запрос зачастую получается на столько...

SQLiteDatabase, составление запроса для сортировки типа дерево
здравствуйте, есть ListView который выгружает из базы позиции. как сделать так чтобы после каждого...

Пример простого http- запроса
Добрый день! прошу посодействовать в решении данного вопроса: имеется устройство в локальной сети...

Два http get запроса в одном AsyncTask
Добрый день, при вызове двух последовательных http get запросов происходит следующая ситуация:...

18
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
03.07.2012, 20:40 2
http://www.androidsnippets.com... httpclient
http://www.androidsnippets.com... httpclient
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
03.07.2012, 20:54  [ТС] 3
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public void postData() {
    // Create a new HttpClient and Post Header
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php");
 
    try {
        // Add your data
        List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
        nameValuePairs.add(new BasicNameValuePair("id", "12345"));
        nameValuePairs.add(new BasicNameValuePair("stringdata", "AndDev is Cool!"));
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
 
        // Execute HTTP Post Request
        HttpResponse response = httpclient.execute(httppost);
        
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
    } catch (IOException e) {
        // TODO Auto-generated catch block
    }
}
итоги по нулям((

Добавлено через 26 секунд
Java
1
2
catch (IOException e) {
        // TODO Auto-generated catch block
суда переходит

Добавлено через 43 секунды
Java
1
HttpResponse response = httpclient.execute(httppost);
а это не выполняется, перед ним выхoдит из try
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
03.07.2012, 21:07 4
<uses-permission android:name="android.permission.INTERNET" />
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 12:20  [ТС] 5
а как можно вывести содержимое страницы которую открыло с паролем и логином на экран, или хотя бы часть этих данных??

Добавлено через 1 час 48 минут
Java
1
2
3
4
5
6
7
8
9
10
BufferedReader rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
 
            String line = "";
            while ((line = rd.readLine()) != null) {
                System.out.println(line);
                if (line.startsWith("Auth=")) {
                    String key = line.substring(5);
                    // Do something with the key
                }
            }
Выводится страница, но только в лог, а как ее встаить на экран или что можно сделать для вывода ее на экран приложения??
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 13:47 6
-если у вас в ответе от сервера html, можно вывести в webview
-но я не вижу смысла так как человек может зайти через сайт и получить тот же функционал
-лучше реализовать свой интерфейс для работы с сайтом, если вы задавались такой целью
так как по вашим вопросом можно только гадать
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 14:16  [ТС] 7
у меня есть меню, при нажатии на кнопку(на той же меню), открывается новое окно, в нем нужно отобразить часть данных полученных при запросе, который написан выше, как мне эти данные допустим занести в html файл??
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 14:23 8
в ответ от сервера вам приходит строка данных

если у вас в ответ приходит html - строка и вам надо его распарсить, то используем к пример HtmlСleaner
http://www.javatalks.ru/sutra121348.php

ваш вопрос как их занести в html вообще не понятен
вот к примеру
Java
1
myWebView.loadData(myHtmlString, "text/html; charset=UTF-8", null);
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 14:38  [ТС] 9
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
public void postData() {
        
        // Create a new HttpClient and Post Header
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://fergus.myftp.org/poit7/index.php");
 
        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
            nameValuePairs.add(new BasicNameValuePair("user_login", "Noit"));
            nameValuePairs.add(new BasicNameValuePair("user_password", "123456"));
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            // Execute HTTP Post Request
            HttpResponse response = httpclient.execute(httppost);
 
            System.out.println(response);
            
            BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
 
            String line = "";
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
                
                if (line.startsWith("Auth=")) {
                    String key = line.substring(5);
                    // Do something with the key
                }
            }
            
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            Log.e("ERROR","MalformedURLException");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            Log.e("ERROR","IOException");
        }
        
    }
в reader находится текст страницы, извиняюсь, если спрашиваю глупости, но как это вывести именно на экран?

Добавлено через 40 секунд
я вывожу в Log, для проверки, а на экран вывести не могу(
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 14:45 10
сироки с 18 по 28 убрать и заменить на
String str = EntityUtils.toString(response.getEntity());
response.getEntity().consumeContent();
return str;

и соответсвенно понемять тип возвращаемого значения на стринг

ну и потом в активити где-то присвоить например EditText
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 14:56  [ТС] 11
Цитата Сообщение от flashok Посмотреть сообщение
return str;
Ошибочка вылезла:
Void methods cannot return a value
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 15:02 12
Цитата Сообщение от flashok Посмотреть сообщение
и соответсвенно понемять тип возвращаемого значения на стринг
для кого я писал
1
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 15:31  [ТС] 13
а можно ли еще чтобы вывести не в EditText а в webView в качестве страницы?? и пример пожалуйста

Добавлено через 17 минут
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
public class AfishaActivity extends Activity {
            
    private WebView mWebView;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test);
                
        /*EditText WebText = new EditText(this);
        Spanned stroka = Html.fromHtml(postData());
        WebText.setText(stroka);
 
        setContentView(WebText);*/
        
        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.getSettings().setJavaScriptEnabled(true); 
        mWebView.loadData(postData(), "text/html", null);
        mWebView.setWebViewClient(new BrouserClient());
        
    }
    
    private class BrouserClient extends WebViewClient 
    {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) 
        {
            view.loadUrl(url);
            return true;
        }
    }
есть такая часть кода, но... она выводит строку с кодом в качестве адреса(
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 15:48 14
я же уже писал что можно сделать так

Java
1
myWebView.loadData(myHtmlString, "text/html; charset=UTF-8", null);
где myHtmlString возвращаемая предудущей функцией строка

если я все правильно понял

У вас в коде я не заметил mWebView
что-то я не понял тогда что у вас не получаеться

проще киньте проект
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 16:05  [ТС] 15
считывает строку не как хтмл контент, а как адрес по которому должна быть страница выводит якобы веб страница не доступна

Добавлено через 6 минут
уже разобрался, только вместо русских буквочек, казикабры вылезли
0
97 / 96 / 4
Регистрация: 14.02.2009
Сообщений: 311
04.07.2012, 16:11 16
кодировку поставьте charset=UTF-8
как я говорил выше myWebView.loadData(myHtmlString, "text/html; charset=UTF-8", null)
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 16:36  [ТС] 17
так и стоит

Java
1
2
3
4
5
Spanned stroka = Html.fromHtml(postData());
        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.getSettings().setJavaScriptEnabled(true); 
        mWebView.loadData(stroka.toString(), "text/html; charset=UTF-8", null);
        mWebView.setWebViewClient(new BrouserClient());
Добавлено через 18 минут
проблема решена
Java
1
2
3
4
5
Spanned stroka = Html.fromHtml(postData());
        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.loadDataWithBaseURL(null, stroka.toString(), "text/html", "utf-8", null);
        mWebView.setWebViewClient(new BrouserClient());
0
1162 / 986 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
04.07.2012, 16:51 18
наверное нужно было так
Java
1
mWebView.loadData(stroka.toString(), "text/html", "UTF-8");
0
26 / 26 / 10
Регистрация: 11.04.2012
Сообщений: 870
04.07.2012, 17:02  [ТС] 19
Цитата Сообщение от V0v1k Посмотреть сообщение
mWebView.loadData(stroka.toString(), "text/html", "UTF-8");
нет так не работает, нужно было так
Java
1
mWebView.loadDataWithBaseURL(null, stroka.toString(), "text/html", "utf-8", null);
0
04.07.2012, 17:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.07.2012, 17:02
Помогаю со студенческими работами здесь

Ограничить время выполнения HTTP запроса
Всем привет Имеется код, работающий на отдельном сервисе BufferedReader rdr = null;...

Пример выполнения (HTTP) запроса к веб-сервису и разбор ответа
Здравствуйте! Просмотрев кучу форумов и прочитав много статей, не нашёл ответа на вопрос как...

Составление запроса
есть 2 таблицы special: id naimspec allspecial: id kspec namespec во allspecial хранится...

Составление запроса
Есть база в которой фиксируется время заезда, г/н и признак того что авто заехало на территорию -1...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru