0

我正在使用套接字练习原始 HTTP 请求。我了解 HTTP 协议的工作原理(基本),并且知道如何构建请求。

目前我的基本 HTTP 请求是:

GET / HTTP/1.1
Host: google.com
Connection: Close

当我想请求google.com/toll.php(当然不存在)时:

GET /toll.php HTTP/1.1
Host: google.com
Connection: Close

但是,如果我有一个包含子域的 url,例如:

lol.google.com/toll.php 

请求应该是:

GET /lol/toll.php HTTP/1.1
Host: google.com
Connection: Close

或者应该是:

GET /toll.php HTTP/1.1
Host: lol.google.com
Connection: Close

这个问题快把我逼疯了!我已经阅读了 .NET 文档和套接字以及一些关于 HTTP 协议的文档。我也用谷歌搜索了很多术语,但仍然......我无法找到答案。

我正在使用 C# (.NET),并且我知道没有必要编写 HTTP 类或执行手动 HTTP 请求,因为我们有 HttpWebRequest 类。这仅用于学习目的。

提前致谢。斯文

4

1 回答 1

2

绝对应该是

GET /toll.php HTTP/1.1
Host: lol.google.com

Http 不区分域和子域。它们都是具有不同名称的简单主机。

于 2012-07-25T13:32:28.070 回答