Fiddler没有捕获Apache HttpClient帖子

时间:2015-08-19 14:30:16

标签: java fiddler apache-httpclient-4.x

不知怎的,Fiddler没有捕获我从Apache提供的HttpClient发送的帖子。

但是当我使用HttpClient将相同的帖子在C#中发送到同一台服务器时,Fiddler会拦截会话。

我的Java代码:

private DefaultHttpClient client = new DefaultHttpClient();
private HttpContext context = new BasicHttpContext();
private BasicCookieStore store = new BasicCookieStore();

public Client() throws URISyntaxException {
    context.setAttribute(ClientContext.COOKIE_STORE, store);
    logIn();
}

private void logIn() throws URISyntaxException {
    HttpUriRequest login = RequestBuilder.post()
            .setUri(new URI("http://www.derpforum.nl"))
            .addParameter("username", "Kattoor4")
            .addParameter("password", "XXXX")
            .addHeader("Referer", "http://www.derpforum.nl/")
            .build();
    try (CloseableHttpResponse response = client.execute(login, context)) {
        HttpEntity entity = response.getEntity();
        BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent()));
        String line;
        while ((line = reader.readLine()) != null)
            System.out.println(line);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

有什么想法?谢谢!

1 个答案:

答案 0 :(得分:0)

我正在使用 Apache HttpClient(4.5.5),SWT4和Fiddler4 ,并且VM arguments方法对我不起作用。

所以我在代码中设置了代理设置,它可以工作。

HttpHost proxy = new HttpHost("localhost", 8888, "http");
DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy);
CloseableHttpClient httpclient = HttpClients.custom()
                .setRoutePlanner(routePlanner)
                .build();