httpclient = new DefaultHttpClient();
HttpPost httpPost4 = new HttpPost("http://iservice.10010.com/e3/static/query/callDetail?_=1536896773846&accessURL=http://iservice.10010.com/e4/query/bill/call_dan-iframe.html&menuid=000100030001");
httpPost4.addHeader("Host", "iservice.10010.com");
httpPost4.addHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36");
httpPost4.addHeader("Accept", "application/json, text/javascript, /; q=0.01");
httpPost4.addHeader("Referer", "http://iservice.10010.com/e4/query/bill/call_dan-iframe.html");
httpPost4.addHeader("Cookie", "JSESSIONID=D7248BA418AA5E99A20DE08075B68011; "
+ "JUT=gjOecwTjir2jhBVOAHM+AquP6iv75dpLtpDAFYode5kWAwVnHcLFSuH4lWpa5gLj5DPekQxsw25+blAScfAW5wP/32pgB+JEtahRDgtMP1UhGPzE9U5NRkK+oYdrLlywv+YIqP+/vp/oP6KnSb+HSIGUOJcxfaljiTud/F+s5qDyRY618apu7Fdrz1JqAudVlsppog/oCsIte5eZMggPko4YYLfwgpsemG0y6pzuNwyMgldek/dxIYvxmVfG0QlAsOQkSm9gmekXBF4nITIc8tdgR7nlUaM1pRvSAyO4Aru2pvfz6lJhUa3RLpSXVnHmt95KOWvFCkuMz3X4gImkFQRk5V61n/HTrNezsTv6SV91JS5ly8ABK5iHrMEzVzxkudWHBjuHDU2o/fEQycmHnFCWk1VC1AoCWttgcKwh7qbhQwVILvsPiQvPrkA63O1iwV7UdOGzojW19Su1w7EwPz00NraeNWB5WTJpZ4NHCJ6JItf7uTf3Fhm4Efs/qLONvUssPNugme/kt+A0ngqZ2Odn0m1KGRTmUcTvXls7L8ZJs9WhHjdmRA==; "
+ "ingressroute=1404ec5d41bb155e42dbff00439be84ad362446a; "
+ "loginflag=true");
/* httpPost4.addHeader("Cookie", "JSESSIONID="+jsessionid+";"
+"JUT="+JUT+";"
+ "ingressroute="+ingressroute+"; "
+ "loginflag=true");*/
httpPost4.addHeader("X-Requested-With", "XMLHttpRequest");
List nvps = new ArrayList();
nvps.add(new BasicNameValuePair("pageNo", "1"));
nvps.add(new BasicNameValuePair("pageSize", "20"));
nvps.add(new BasicNameValuePair("beginDate", "20180501"));
nvps.add(new BasicNameValuePair("endDate", "20180531"));
String responseBody = "";
try {
httpPost4.setEntity(new UrlEncodedFormEntity(nvps));
response = httpclient.execute(httpPost4);
responseBody = EntityUtils.toString(response.getEntity());
System.out.println(responseBody);
} catch (Exception e) {
e.printStackTrace();
responseBody = null;
} finally {
httpPost4.abort();
}
如果用网页上面登录后查询的通话详细地址是没错的,一旦换成我的程序中的cooike有有问题,可是我这个这个cooike操作都是可以的,所有不知道是哪里出现错误。
一旦用自己的cooike就出现
ava.net.SocketException: Connection reset 这个报错
抓包对比下,你为什么要用自己的cookie,你应该按照我上次给你的思路,所有的cookie都用set-cookie返回的。
我不是很确定,但是有可能服务器有防ddos攻击或者多次提交,所有有些cookie一次就失效了。你可以抓包看下,哪些cookie是每次会变的,首先这些cookie不能写死。
另外还有一个可能就是虽然你写的没问题,但是你提交过于频繁了,或者你同一个ip有大量的提交,这个你要观察下。