对于http的请求与响应,可以使用commons-httpclient.jar来实现数据的接收与发送,代码如下:
package com.project.util; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.PostMethod; /** * Http请求公共类 * @author Administrator * */ public class HttpPost { private static HttpClient httpclient = null; private static int iTimeOut = 5000; @SuppressWarnings("rawtypes") private static Map map = new HashMap(); private static final Object object = new Object(); private String postUrl = null; private HttpPost() { } public static HttpPost getInstance(String sUrl) { HttpPost instance = null; if((instance = (HttpPost) map.get(sUrl)) == null) { synchronized (object) { if((instance = (HttpPost)map.get(sUrl)) == null) { if(httpclient == null) { MultiThreadedHttpConnectionManager manager = new MultiThreadedHttpConnectionManager(); httpclient = new HttpClient(manager); } instance = new HttpPost(); instance.postUrl = sUrl; } } } return instance; } public String post(Map map) { return post(map, "application/x-www-form-urlencoded", "Mozilla/4.0"); } public String post(Map map, String contentType, String userAgent) { if(iTimeOut >= 0) { httpclient.getHttpConnectionManager().getParams().setConnectionTimeout(iTimeOut); } else { httpclient.getHttpConnectionManager().getParams().setConnectionTimeout(0); } PostMethod method = new PostMethod(postUrl); method.addRequestHeader("Content-Type", contentType); method.addRequestHeader("User-Agent", userAgent); // 处理需要发送的字符串 NameValuePair[] valuePairs = new NameValuePair[map.size()]; Collection collection = map.entrySet(); Iterator iterator = collection.iterator(); int i = 0; while(iterator.hasNext()) { String strKey = ((Map.Entry)iterator.next()).getKey().toString(); valuePairs[(i++)] = new NameValuePair(strKey, (String)map.get(strKey)); } method.setRequestBody(valuePairs); String responseStr = ""; try { httpclient.executeMethod(method); String charSet = method.getResponseCharSet(); responseStr = new String(method.getResponseBodyAsString().getBytes(charSet), "ISO8859-1"); } catch(Exception e) { e.printStackTrace(); } return responseStr; } }
相关推荐
ResultResponse 是一个设计用于封装Web应用响应的Java类。它通过泛型支持对各种数据类型的响应封装,包含以下几个关键部分: - 状态(Status):表示请求处理的成功或失败。 - 状态码(Code):提供具体的状态标识,...
渗透工具 HTTP的请求响应模型 漏洞利用类工具 Windows密码破解工具 开发者:Oxid.it 平台:windows 版权:免费 * * * * * * * * 漏洞利用类工具 渗透工具 HTTP的请求响应模型 漏洞利用类工具 Metasploit Framework...
这是一个基于servlet的方式实现对request参数...程序中使用了本人自己封装的工具类感性趣的朋友可自行下载,目前工具类简单;加关注在后期的博客中;工具类会加强;这个程序设计的技术有servlet、filter、装饰器模式;
JavaLite HTTP是一个用于发出HTTP请求和返回响应的小型库。 它没有除JDK之外的依赖项。
主要介绍了Java实现Http工具类的封装操作,涉及java针对http请求与响应、远程交互与字符串拼接等操作封装技巧,需要的朋友可以参考下
* 获取响应码 200=成功 当响应成功,获取响应的流 */ int res = conn.getResponseCode(); Log.e(TAG, "response code:" + res); if (res == 200) { return SUCCESS; } }else{ ...
通过HttpConnection请求跨域接口 public String invokeServiceMethod(String url,Map,String> params,Map, String> header) throws Exception{ HttpClient httpclient=new DefaultHttpClient(); HttpResponse...
单击此处添加标题 * * * * * * * * * 目录页 网络渗透工具信息收集类 渗透工具 HTTP的请求响应模型 渗透工具不胜枚举,只能选取少数工具来介绍: ?信息收集类工具 ?漏洞利用类工具 ?辅助类及工具套件 渗透工具 信息...
支持的功能url参数自动序列化发布数据提交方法得到简化响应返回处理简化api超时支持api请求缓存支持支持处理gbk 请求和响应拦截器支持,例如axios 统一错误处理中间件支持取消请求支持,例如axios 从node.js发出http...
CDSpace是基于Apache Http Client和Sun Http Server两个库,以JavaFX为GUI框架开发的一款HTTP接口测试工具,主要功能分为两部分:1、模拟HttpClient发送自定义请求给服务端,接受响应并将响应的消息体和头域显示在...
okhttp 封装的工具类使用超级方便 HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有以下默认特性: 支持HTTP/2,允许所有同一个...
通过向任一服务器发送http请求,查看server端过来的内容,状态行,响应报头,空行,实际内容. 这可以帮助理解http协议. 运行方法: 1.有eclipse或其它开发环境下: 将里面的java源文件放入任一java工程的default包中, ...
nginx-sla模块收集有关HTTP代码和上游响应时间的高级统计信息,以进一步传输到诸如监视工具。 该模块回答以下问题: 上游(后端)的平均响应时间是多少? HTTP状态为200、404的响应数是多少? 不同类别的HTTP状态-2...
局部拦截支持docker部署支持k8s部署支持json序列化时自定义小数位数接口版本控制保留精度的数学计算工具类http请求工具类redis和redis分布式锁工具类json响应工具类支持Jenkinsfile重建二维码生成工具类redis id生成...
请求响应测试, 别小看这样的自动化测试。 什么开心农场助手,自动投票机。 网络爬虫都是 用这个做的。 相关技术 1 .NET中提供的类来发送HTTP Request 2 WebClient类的用法 3 模拟“GET” 方法 4 Cookie 的处理 ...
Postman是在开发或者调试网络程序的时候用来跟踪网页请求的工具,简单来说,它是用来进行接口测试和跟踪http请求的工具,这里给出github的地址: https://github.com/postmanlabs Postman的优点有以下几类: ...
对于RESTFul API服务各有各的见解,网上大多是自己封装了controller层统一格式返回,通常情况下,不管你怎么请求,它总是响应你的http状态码为200。 而本项目中充分结合了HTTP状态码规范,使用ResponseEntity + ...
抓取 Http 和 Https 的请求和响应,抓包是最常用的了。 重发网络请求,方便后端调试,复杂和特殊情况下的一件重发还是非常爽的(捕获的记录,直接repeat就可以了,如果想修改还可以修改)。 修改网络请求参数...
工作中实用的Java工具类整理 config 多数据源的配置及动态切换数据库的切面配置(还未完善好,配置文件暂上传) database JedisUtil(redis连接操作实现) encrypt RsaUtils(rsa加密Java实现) http http.async ...
Requester是Sublime Text 3的现代,面向团队的HTTP客户端,结合了诸如Postman,Paw和HTTPie之类的应用程序功能,具有坚如磐石的可用性和Requests的秘密。 :glowing_star: 轻松设置请求正文,查询参数,自定义标头,...