Java 小提琴手不';捕获Apache HttpClient post
不知何故,Fiddler没有捕获我从Apache提供的HttpClient发送的帖子 但是当我使用HttpClient将同一篇文章用C#发送到同一台服务器时,Fiddler确实截获了会话 我的Java代码:Java 小提琴手不';捕获Apache HttpClient post,java,fiddler,apache-httpclient-4.x,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 =
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();
}
}
有什么想法吗?谢谢 您可能需要在代码中或通过如下设置相关Java系统属性来配置Java以使用Fiddler作为代理
我正在使用apachehttpclient(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();
HttpHost proxy = new HttpHost("localhost", 8888, "http");
DefaultProxyRoutePlanner routePlanner = new DefaultProxyRoutePlanner(proxy);
CloseableHttpClient httpclient = HttpClients.custom()
.setRoutePlanner(routePlanner)
.build();