Fiddler为什么不看我的帖子?

时间:2012-10-01 21:40:40

标签: android post

我正在从我的Android AVD做一个HttpPost如下......

// Create a new HttpClient and Post Header 
HttpClient httpclient = new DefaultHttpClient(); 
HttpPost httppost = new HttpPost("http://www.yoursite.com/api/GETTrafficDirector"); 
HttpResponse response = null; 

try { 
    // Add your data 
    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
    nameValuePairs.add(new BasicNameValuePair("id", "12345")); 
    nameValuePairs.add(new BasicNameValuePair("stringdata", "AndDev is Cool!")); 
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 

    // Execute HTTP Post Request 
    response = httpclient.execute(httppost); 
}

当帖子执行时我正在运行Fiddler,但Fiddler没有任何反应。 Fiddler不应该抓住这个帖子吗?我希望检查实体内容,因为Eclipse中的显示很难阅读。 谢谢,加里

1 个答案:

答案 0 :(得分:0)

如果查看this tutorial,您必须使用指向127.0.0.1的代理以及运行的任何端口fiddler启动Android AVD。

编辑: 在使用these instructions进行一些实验之后,我发现可能模拟器开始尊重127.0.0.1本身而不是主机,所以我输入了我的主机IP地址

然后从APN中的每个用户名和密码中删除了单个字符,fiddler开始记录来自模拟器浏览器的流量,但不是来自我的应用程序。

所以至少是那里的一部分。

进一步编辑:

看看这个问题Getting information about the system proxy,您需要明确告诉您的应用使用系统代理设置(这对我而言似乎是心理上的)

还有更多编辑:

如果我添加

    HttpHost proxy = new HttpHost("192.168.0.9", 8888);
    client.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);

在我的应用中设置我的客户端,然后我会看到来自我的应用的传出流量