【发布时间】:2023-03-13 21:30:01
【问题描述】:
今天我在问如何从我的recv() 中的 C(不是 C++)中的接收缓冲区中提取数据部分。
我只是需要一些建议,我将如何获得
HTTP/1.1 200 OK\r\n
Date: Mon, 23 May 2005 22:38:34 GMT\r\n
Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux)\r\n
Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT\r\n
ETag: "3f80f-1b6-3e1cb03b"\r\n
Content-Type: text/html; charset=UTF-8\r\n
Content-Length: 131\r\n
Connection: close\r\n
\r\n
<html>
<head>
<title>An Example Page</title>
</head>
<body>
Hello World, this is a very simple HTML document.
</body>
</html>
上述标题的部分?它存储在我的缓冲区中,我只想剖析数据(页面的源代码)。有什么想法吗?
【问题讨论】:
-
要回答的问题很多。
-
所以你只是想剥离标题?如果我是你,我会反省数据并尝试推断任务的最佳策略。
-
找到
<html>并丢弃之前的一切? -
也许最简单的方法是找到双\r\n,但你必须注意数据可能被分块或压缩压缩,所以不能跳过解析响应头。
标签: c http-headers winsock