背景:解决java http from 请求出了问题,需要监控请求查看一下,相关参数设置;我下载了fiddler5 来抓取包信息,发现无法抓取,经过百娘发现,fiddler5无法拦截到java 的请求;需要配置代理; fiddler5默认监控配置是8888端口,所以需要设置java代理;网上说修改java启动设置,我没有弄出来;所以我使用的是将代理放到请求里面,这样是通过代码设置代理;这样可以根据需要去设置请求代理。
相关的包)
核心代码:
HttpPost pos = new HttpPost(url+"?date="+(new Date().getTime()));//端口 和 ip 可以根据需要自行修改,我这是抓包需要 设置为8888RequestConfig defaultRequestConfig = RequestConfig.custom().setSocketTimeout(5000).setConnectTimeout(5000).setConnectionRequestTimeout(5000).setStaleConnectionCheckEnabled(true).build();RequestConfig requestConfig = py(defaultRequestConfig).setProxy(new HttpHost("127.0.0.1", 8888)) .build();pos.setConfig(requestConfig);
我的代码:
CookieStore cookieStore = new BasicCookieStore();//设置cookieBasicClientCookie cookie = new BasicClientCookie("JSESSIONID", jsessionin); cookie.setVersion(0); cookie.setDomain("/"); //设置范围cookie.setPath("/"); cookieStore.addCookie(cookie);CloseableHttpClient httpclient = HttpClients.custom().setDefaultCookieStore(cookieStore).build();log.debugger("判定为【中国证券投资基金业协会】使用httpclient-4.5 --------->>>>>");//CloseableHttpClient httpclient = ateDefault();MultipartEntityBuilder reqEntityate();//设置模拟浏览器的上传格式reqEntity.setMode(HttpMultipartMode.RFC6532);//文件参数if (file != null) {for (Map.Entry<String, File> enetiy : Set()) {log.debugger("添加参数文件域参数" + Key());reqEntity.Key(), Value(),ContentType.DEFAULT_BINARY, Value().getName());//reqEntity.Key(), new//File("D:\"),ContentType.TEXT_PLAIN,");//Content-Type: application/vnd.ms-excel}} // 添加上传参数if (param != null) {for (Map.Entry<String, String> enetiy : Set()) {log.debugger("添加上传普通参数" + Key() + "<---->" + Value());reqEntity.Key(), Value());}}//组装urlStringBuilder stringBuilder = new StringBuilder();stringBuilder.append(url+"?date=");stringBuilder.append((new Date().getTime()));log.debugger("组装的url:" + String());//设置代理RequestConfig defaultRequestConfig = RequestConfig.custom().setSocketTimeout(5000).setConnectTimeout(5000).setConnectionRequestTimeout(5000).setStaleConnectionCheckEnabled(true).build();RequestConfig requestConfig = py(defaultRequestConfig).setProxy(new HttpHost("127.0.0.1", 8888)).build();//pos.setConfig(requestConfig);//设置发送请求参数HttpUriRequest request = RequestBuilder.String()).setEntity(reqEntity.build()).setConfig(requestConfig).build();System.out.println("请求参数 request: " + RequestLine());ResponseHandler<String> responseHandler = new BasicResponseHandler(); //执行请求log.debugger("开始上传---------->>>>>" + String());String responseBody = ute(request, responseHandler);log.debugger("执行完成---------->>>>>");log.debugger("返回参数:"+responseBody);return responseBody;
本文发布于:2024-02-05 05:29:19,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170725225063450.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |