HTTP下载如何工作?

时间:2012-04-12 17:28:42

标签: http download

假设我想从http://www.xxx.ууу/example.pdf

下载名为example.pdf的文件

我发送GET请求可能是这样的:

GET /example.pdf HTTP/1.1␍␊
 Host: www.xxx.yyy␍␊
 ␍␊

但下一步是什么?

如何交换http标头?

5 个答案:

答案 0 :(得分:1)

我假设您已阅读有关HTTP协议的维基百科文章。如果您只需要更多示例,我强烈建议您下载Wireshark。 Wireshark是一个非常强大的数据包嗅探器,它允许您观察您和任何网站之间的数据包通信。此外,它实际上会分解数据包,并用更“人性化的术语”告诉你一些关于它们含义的信息。它有一点学习曲线,但它可以教你很多不同的协议,包括HTTP。

http://www.wireshark.org/

答案 1 :(得分:1)

我不确定您的最终目标是什么,但您可以查看与Live HTTP Headers Firefox插件的实时http标头交互。它也可以在Chrome中使用,但它更多work

答案 2 :(得分:0)

检查HTTP 1.1 RFC

答案 3 :(得分:0)

您可能需要查看http://www.w3.org/Protocols/rfc2616/rfc2616.html。但是,很少需要重新创建协议。

答案 4 :(得分:0)

要响应这样的 GET 请求,应传递具有以下标头的数据包:

HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 6475593
Content-Type: application/x-msdownload
Etag: "qwfw473usll"
Last-Modified: Sun, 18 Jul 2021 12:02:31 GMT
Server: Caddy
Date: Sun, 18 Jul 2021 12:03:47 GMT

在最后一行之后,必须指定要传输的文件的 2 个 CRLF 和行字节。