`
wuhua
  • 浏览: 2095315 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Chunked transfer encoding 简单说明

    博客分类:
  • HTTP
EXT 
阅读更多

Chunked transfer encoding  在协议总是很重要的,

基本分为2部分,一部分是POST checke 一部分是down

 

下面介绍InputStream那部分

 

 

Sample

Encoded response

HTTP/1.1 200 OK
Content-Type: text/plain
Transfer-Encoding: chunked

25
This is the data in the first chunk

1A
and this is the second one
0

same as above, raw bytes in hex

0000-000F   48 54 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d   HTTP/1.1 200 OK.
0010-001F   0a 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 74   .Content-Type: t
0020-002F   65 78 74 2f 70 6c 61 69 6e 0d 0a 54 72 61 6e 73   ext/plain..Trans
0030-003F   66 65 72 2d 45 6e 63 6f 64 69 6e 67 3a 20 63 68   fer-Encoding: ch
0040-004F   75 6e 6b 65 64 0d 0a 0d 0a 32 35 0d 0a 54 68 69   unked....25..Thi
0050-005F   73 20 69 73 20 74 68 65 20 64 61 74 61 20 69 6e   s is the data in
0060-006F   20 74 68 65 20 66 69 72 73 74 20 63 68 75 6e 6b    the first chunk
0070-007F   0d 0a 0d 0a 31 41 0d 0a 61 6e 64 20 74 68 69 73   ....1A..and this
0080-008F   20 69 73 20 74 68 65 20 73 65 63 6f 6e 64 20 6f    is the second o
0090-009F   6e 65 0d 0a 30 0d 0a 0d 0a                        ne..0....

same as above, in Java code

public static final byte[] CHUNKED_RESPONSE;
static {		 
	StringBuilder sb = new StringBuilder();
	sb.append("HTTP/1.1 200 OK\r\n");
	sb.append("Content-Type: text/plain\r\n");
	sb.append("Transfer-Encoding: chunked\r\n\r\n");
	sb.append("25\r\n");		
	sb.append("This is the data in the first chunk\r\n"); // 37 bytes of payload
			// (conveniently consisting of ASCII characters only)
	sb.append("\r\n1A\r\n");
	sb.append("and this is the second one"); // 26 bytes of payload
			// (conveniently consisting of ASCII characters only)
	sb.append("\r\n0\r\n\r\n");
	CHUNKED_RESPONSE = sb.toString().getBytes(java.nio.charset.Charset.forName("US-ASCII"));
}


Decoded data

This is the data in the first chunk
and this is the second one

 

分享到:
评论

相关推荐

    java 使用socked接收chunck分块数据

    java 使用socked接收chunck分块数据 , 部分做修改, 原来参考地址:http://blog.csdn.net/lhj_5460/article/details/48156461

    分块传输绕过WAF进行SQL注入1

    分块传输编码(Chunked transfer encoding)是超文本传输协议(HTTP)中的一种数据传输机制,允许HTTP由应用服务器发送给客户端应用

    关于PHP 如何用 curl 读取 HTTP chunked 数据

    通过本文给大家介绍php用curl读取http chunked数据的方法,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起学习吧

    php下HTTP Response中的Chunked编码实现方法

    进行Chunked编码传输的HTTP Response会在消息头部设置: Transfer-Encoding: chunked 表示Content Body将用Chunked编码传输内容。 Chunked编码使用若干个Chunk串连而成,由一个标明长度为0的chunk标示结束。每个...

    Aria2135032bit.7z

    Chunked transfer encoding support Load Cookies from file using the Firefox3 format, Chromium/Google Chrome and the Mozilla/Firefox (1.x/2.x)/Netscape format. Save Cookies in the Mozilla/Firefox (1.x...

    CefSharp.rar

    //网页 Transfer-Encoding: chunked,普通采集程序返回412错误 //采用 Chrome WebBrowser模式返回Html //需nuget 下载CefSharp.WinForms包

    node.js基础模块http、网页分析工具cherrio实现爬虫

    一、前言 ... 这里我主要学习过的案例自己敲了一遍,加深理解。在coding的过程中,我第一次把jq获取后的对象直接用forEach遍历,直接报错,是因为jq没有对应的这个方法,只有js数组可以调用。 二、知识点 ...

    django-eventstream:Django的服务器发送事件

    Django EventStream EventStream为您的Django应用程序提供API终结点,...Transfer-Encoding: chunked Connection: Transfer-Encoding Content-Type: text/event-stream event: message data: {"foo": "bar"} event:

    P21_创建Company资源POST_P20_HTTP方法的安全性与幂等性_Routine.Api2020_2_7.rar

    Transfer-Encoding:chunked Location:http://localhost:5000/api/companies/61156544-d8bd-4787-a79a-a484dd9a382c 在浏览器中输入http://localhost:5000/api/companies/61156544-d8bd-4787-a79a-a484dd9a382c ...

    HTTP服务器返回的chunk数据包

    HTTP chunk数据包 服务器端发送的数据格式有俩类,我称之为按长度返回、按块返回这俩类。一类是在返回头中有Content-Length: 258,258标识该正文内容长度;还有一类是返回Transfer-Encoding: chunked。

    libevent-1.1b_1.4.13-stable_2.0.3-alpha 源码(资料中转)

    Chunked transfer encoding for HTTP/1.1 from Dug Song. DNS DDoS fix; bug report from Jon Oberheide. Various small improvements. libevent-1.2a.tar.gz- Release 2006-12-02 Made ...

    serverless-testing-examples:无服务器测试示例

    无服务器测试示例 该存储库说明了一些测试使用构建的应用程序的策略。 我已经在“媒介:上发表了有关此的文章 设置 安装Node 8.10(AWS Lambda支持的最新运行时)...Transfer-Encoding: chunked access-control-allow

    echo_server_js:一个简单的测试服务器,可以返回所需的状态代码或有效负载

    #Echo服务器 一个简单的测试服务器,以回显所需的状态代码,主体或其他参数 用法 要启动服务器,只需运行node server.js ,然后开始向服务器发出请求。... Transfer-Encoding: chunked 示例:消息 $ curl -v http://12

    Nginx中使用gzip_http_version解决CDN只支持http 1.0问题

    Transfer-Encoding: chunked google了许久,发现是CDN的抓取好像只支持http 1.0 而nginx的 gzip_http_version选项默认值为1.1 在nginx的配置文件中增加或修改gzip_http_version参数,为: 代码如下: gzip_...

    streams_integration

    XHR 使用其公共方法从ReadableStream读取数据作为ArrayBuffer s,并使用Transfer-Encoding: chunked将它们发送到网络,而无需等待整个响应主体准备就绪。 当ReadableStream关闭时,终止请求正文。 var reques

    spring-mvc-msgpack-sample:Spring MVC + MessagePack 示例

    Spring MVC + MessagePack 示例 跑步 $ mvn spring-boot:run $ curl -v "localhost:8080/calc?... Transfer-Encoding: chunked < Date: Fri, 16 Jan 2015 15:00:26 GMT < leftd right , answer

    neustar-clouds-proxy

    如何建造 首先,需要构建和 。 之后,只需运行 mvn clean install ...Transfer-Encoding: chunked Date: Fri, 19 Sep 2014 15:37:06 GMT { "id" : 2, "time_started" : "2014-09-19T15:36:54.478

    HTTP协议详解

    3.6.1块传输编码(Chunked Transfer Coding) 3.7 媒体类型(Media Type) 3.7.1规范化和文本缺省 (Canonicalization and Text Defaults) 3.7.2多部分类型(Multipart type) 3.8 产品标记 (product Tokens) 3.9...

    stocazzo:服务式Stocazzo

    Stocazzo即服务 Node REST服务,用于将Stocazzo作为应用程序的资产提供。 API端点 / 将返回“ stocazzo”。...Transfer-Encoding: chunked cache-control: no-cache content-encoding: gzip conten

Global site tag (gtag.js) - Google Analytics