HTTP Chunked传输编码:如何发送“\ r \ n”?

时间:2009-08-06 22:25:34

标签: http chunked-encoding

假设我正在尝试通过分块编码发送的正文包含“\ r \ n”,我该如何避免将其解释为块分隔符?

e.g。 “你所有的基地都是\ r \ n属于我们”

http://en.wikipedia.org/wiki/Chunked_transfer_encoding

2 个答案:

答案 0 :(得分:15)

“\ r \ n”实际上不是一个块分隔符。块大小指定该块数据组成的字节数。然后,客户端应该正确阅读邮件中嵌入的“\ r \ n”。

答案 1 :(得分:5)

按设计,这根本不是问题。每个块指定其数据块的字节大小。每个数据块的内容都是任意的,必须这样接收,因此它可以包含换行符。如果客户端正确读取每个块(读取一行并从中解析字节大小,然后读取指定的字节数,然后读取换行符),那么数据中是否存在换行符无关紧要,因为客户端正在根据字节大小读取数据,而不是在换行符上读取数据。