Как узнать пакет данных, которые отправляются на сервер с Android

1

Я использую следующий код для отправки запроса на сервер:

HttpClient httpclient = new DefaultHttpClient();
httpclient.getCredentialsProvider().setCredentials(
                new AuthScope("localhost", 8080),
                new UsernamePasswordCredentials("username", "password"));

HttpHost targetHost = new HttpHost("www.myhost.com", 443, "https");
targetHost .setHeader("Accept-Language", "en-us,en;q=0.5");
targetHost .setHeader("Accept-Encoding", "gzip,deflate");
targetHost .setHeader("Accept-Charset","ISO-8859-1,utf-8;q=0.7,*;q=0.7");
StringEntity se = new StringEntity(myRequestData, "UTF8");
se.setContentType("text/xml");
se.setContentEncoding("gzip,deflate");
targetHost .setEntity(se);
httpclient.excute(targetHost);

Проблема в том, что я хочу точно видеть, что я отправляю на сервер (заголовок, данные...) и пакет ответов с сервера. Я знаю, что Wireshark может помочь, но я не знаю, как использовать его для моего кода Android. Мне нужно несколько примеров или учебник, чтобы сделать это, или, возможно, другое решение. Заранее спасибо!
P/S: у меня нет права администратора и я не могу управлять сервером.

Теги:
wireshark
apache-httpclient-4.x

1 ответ

1
Лучший ответ

Конечно, научиться пользоваться Wireshark не повредит. Если у вас есть время, там есть много учебных материалов на сайте проекта, включая видео.

Если вы нажали на время ", хотя, и особенно потому, что вы подключаетесь через SSL, я думаю, что было бы быстрее реализовать" фиктивный "сервер, который печатает все, что он получает, и указать ваш Android-код для подключения к нему. Здесь обновление на серверных сокетах на Java. Вы также можете получить фактический ответ сервера из возвращаемого значения метода execute.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню