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:我没有管理员权限,无法控制服务器。

4

1 回答 1

1

当然,学习如何使用 Wireshark 不会有什么坏处。如果你有时间,项目网站上有很多学习资料,包括视频。

但是,如果您时间紧迫,尤其是因为您通过 SSL 进行连接,我认为实现一个打印接收到的任何内容的“虚拟”服务器会更快,并将您的 Android 代码指向它。这是Java 中服务器端套接字的复习。您还可以从执行的方法返回值中获取实际服务器的响应。

于 2012-06-02T10:46:18.143 回答