`
shendixiong
  • 浏览: 398564 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

http请求解压,解压方法

    博客分类:
  • java
阅读更多

解压:

 

public static String analyzeGetGzip(String url,String param) throws Exception{
		String result = "";
        BufferedReader in = null;
        try {
            String urlNameString = url + "?" + param;
            URL realUrl = new URL(urlNameString);
            // 打开和URL之间的连接
            URLConnection connection = realUrl.openConnection();
            // 设置通用的请求属性
            connection.setRequestProperty("accept", "*/*");
            connection.setRequestProperty("connection", "Keep-Alive");
            connection.setRequestProperty("Pragma", "no-cache");
            connection.setConnectTimeout(5000);
            // 建立实际的连接
            connection.connect();
            // 获取所有响应头字段
            Map<String, List<String>> map = connection.getHeaderFields();
            InputStream urlStream = new GZIPInputStream(connection.getInputStream());
            // 定义 BufferedReader输入流来读取URL的响应
            in = new BufferedReader(new InputStreamReader(urlStream));
            String line;
            while ((line = in.readLine()) != null) {
                result += line;
            }
        } catch (Exception e) {
        	e.printStackTrace();
        } finally {
            try {
                if (in != null) {
                    in.close();
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
        }
        return result;
	}

 

压缩方法:

public static void responseXmlWithGzip(HttpServletResponse response, String docXML){
       
		try {
		       ByteArrayOutputStream bout = new ByteArrayOutputStream();   
		       GZIPOutputStream gzip = new GZIPOutputStream(bout);   
		       gzip.write(docXML.getBytes("UTF-8"));   
		       gzip.flush();   
		       gzip.close();   
		       byte[] buf = bout.toByteArray();    
	           
		         
		    //服务器传回数据的类型和长度   
			response.setHeader("Cache-Control", "no-cache");
			response.setHeader("Content-Encoding","gzip");
			response.setHeader("Content_Length",buf.length+"");  
			response.getOutputStream().write(buf);
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}   
	}

 

 

分享到:
评论

相关推荐

    api实现http请求,支持post和get方法

    本主题聚焦于如何利用API实现HTTP请求,特别是支持POST和GET这两种最常见的HTTP方法。在Delphi 6这样的集成开发环境中,开发者经常需要与网络进行交互,获取或发送数据,而WinINet API库则为此提供了便利。 Delphi ...

    postman解压版以及安装说明.rar

    这个压缩包文件"postman解压版以及安装说明.rar"提供了一个无需常规安装过程的Postman版本,适合那些在安装过程中遇到问题或者寻找简便方法的用户。 在描述中提到,直接安装Postman可能有些复杂,因此分享的这个...

    Java 解析http请求处理结果

    对于POST请求,我们需要设置请求方法,添加请求头(如Content-Type)并写入请求体: ```java connection.setRequestMethod("POST"); connection.setRequestProperty("Content-Type", "application/x-...

    HTTP在线解压组件_一键上传下载.rar

    本组件可能是一个HttpModule,负责解压HTTP请求的内容。 4. **.NET框架**:这个组件很可能基于.NET Framework开发,这是一个由微软提供的开源开发平台,用于构建Web应用和其他类型的应用程序。它包含了大量的类库和...

    QD [v20230821] —— HTTP请求定时任务自动执行框架 base on HAR Editor-qd.zip

    - **Method**:HTTP请求方法,如GET、POST等。 - **Headers**:请求头,用于传递额外信息,如认证凭据、内容类型等。 - **Payload**:对于POST或其他有体数据的方法,用户可以提供请求体的数据。 - **Timeouts**:...

    Postman 免安装,解压直接使用

    4. **Postman的工作流程**:创建一个新的请求,选择HTTP方法,填写URL,添加必要的请求头和参数,点击“Send”按钮,Postman就会发送请求并展示返回的响应。响应内容包括状态码、响应头和响应体,方便开发者分析和...

    Android 在线下载压缩包并解压到指定目录.zip

    综上所述,实现Android在线下载并解压压缩包到指定目录,需要综合运用网络请求、文件操作、流处理和多线程等技术,同时考虑用户体验和安全性。通过以上步骤,开发者可以构建一个高效且可靠的下载解压功能。

    在线解压文件(最快速的在线解压工具)

    在线解压文件是一种便捷的方式,尤其对于那些不希望在本地计算机上安装解压缩软件的用户。最快速的在线解压工具通常提供高效、安全的服务,让用户可以轻松处理各种压缩格式的文件,如ZIP、RAR、7Z等。下面将详细讨论...

    php在线解压工具,实现zip压缩包,快速解压

    可以使用PHP的`$_FILES`全局数组处理HTTP POST请求中的文件上传。确保检查文件类型、大小以及安全验证。 2. **文件存储**:上传的ZIP文件应保存在服务器的安全位置,避免直接暴露在公共访问路径下。同时,考虑使用...

    postman6.1.4最新版解压即可用

    - 创建新请求:点击加号按钮,选择HTTP方法,输入URL,设置请求头和请求体。 - 发送请求:点击"Send"按钮,Postman将向指定URL发送请求,并展示返回的响应数据。 - 收藏与管理:可以将常用请求保存为集合,方便...

    Python-gzipencoding实例如何压缩HTTP请求发送到web服务并处理

    总结来说,Python的gzip编码功能结合HTTP请求库如`requests`,可以帮助我们高效地处理HTTP请求的压缩和解压,从而优化网络通信效率。通过理解这些概念和实践,你可以更好地设计和实现与web服务的交互。在实际项目中...

    C# gzip 携程酒店中用到,请求 压缩和解压

    例如,`WebSvcCaller.cs`可能是一个负责调用携程酒店服务的类,其中包含了请求发送和响应处理的方法。我们可以在这个类中集成gzip压缩和解压缩的逻辑,确保请求数据在发送前被压缩,服务器返回的数据在接收后被解...

    安卓文件下载上传解压相关-Android在线下载压缩包并解压到指定目录源码.rar

    总的来说,Android在线下载压缩包并解压至指定目录涉及了网络请求、文件操作、权限控制以及多线程等技术。开发者在使用或学习此类源码时,应理解其核心原理,以便于灵活应用和优化。同时,注意处理各种异常情况,...

    http测试请求

    1. **发送各种HTTP方法**:包括GET、POST、PUT、DELETE等,这些方法对应于HTTP协议中的不同操作类型,例如获取资源、提交数据、更新资源和删除资源。 2. **自定义请求头**:用户可以设置请求头,如User-Agent、...

    javascript的gzip静态解压

    - 使用`pako.inflate()`方法解压数据,例如:`var decompressedData = pako.inflate(gzippedData, { to: 'string' });` 这将返回解压后的字符串数据。 5. **7z465.exe**: 提供的文件名"7z465.exe"似乎是一个7-...

    ZIP文件解压上传服务器

    - 创建HTTP POST请求,设置请求方法、Content-Type以及请求体(即要上传的文件)。 - 将文件转换为字节流,写入到请求体中。 - 发送请求并处理响应,确保文件上传成功。 3. **异常处理**: - 在整个过程中,...

    asp在线压缩解压程序

    4. **文件下载**:用户可以请求下载压缩后的文件,服务器响应时提供相应的HTTP头信息,指示浏览器以文件下载的方式处理响应内容。 5. **在线解压**:同样,用户也可以选择在线解压已上传的压缩文件。ASP程序读取...

    简单易用ASP解压在线程序

    理解ASP源码,需要对VBScript的基础语法、ASP的内置对象以及HTTP请求和响应流程有深入了解。 【在线解压原理】 在线解压通常是通过服务器端程序接收客户端上传的压缩文件,然后利用服务器上的解压缩库(如WinRAR ...

    模拟http请求客户端.7z

    1. **请求构建器**:用户可以通过GUI界面轻松创建和编辑HTTP请求,包括设置方法(GET、POST、PUT等)、URL、查询参数、请求头和请求体。对于复杂的JSON或XML数据,也有方便的编辑器支持。 2. **响应查看器**:显示...

    UnityWWW下载压缩包并且解压到桌面

    在这个场景中,Unity的WWW类是用于处理HTTP请求和下载文件的主要工具。 `WWW` 类是Unity引擎提供的一种简单方法,用于从互联网下载资源。它能够处理文本、图像、音频等各种类型的数据。在描述中提到的场景中,我们...

Global site tag (gtag.js) - Google Analytics