我正在使用Python中的套接字(来学习它们),同时我也在学习HTTP协议是如何工作的。我一直做得很好,直到我了解到有一种叫做Transfer-Encoding: chunked的东西。我用谷歌搜索了一下,找到了这个wikipedia article。它说每个块的大小是在块本身之前指定的。但是它没有说我应该从套接字读取多少字节才能正确获取它。此外,它没有说明我是否应该关心字符顺序。有谁能提供这方面的细节吗?
发布于 2012-08-24 19:35:06
不要想太多,因为HTTP中的大多数东西都只是纯文本。您只需从套接字读取,直到遇到CRLF序列,然后提取块大小(可能以分号结尾),并将其解释为十六进制数字。
一旦有了这行代码,就可以提取块大小:
chunk_size = int(line.strip().split(';')[0], 16)https://stackoverflow.com/questions/12107635
复制相似问题