我正在尝试通过HTTP 1.1中的GET下载pdf,方法是连接到服务器并通过send()发送请求并通过recv()获取它。
我尝试了一种初学者方法,尝试创建并打开一个文件,然后将我在recv()调用中收到的任何内容保存到其中,并通过pdf扩展名保存文件。但事实并非如此。我做错了什么?
最佳答案
您必须具备以下知识:
套接字
HTTP 协议(protocol)是基于套接字的,因此您必须了解套接字。套接字将帮助您确定数据接收请求何时开始以及仍有多少字节待处理。还有其他一些东西可以帮助您了解基于套接字的其他互联网协议(protocol)。
HTTP
关于 http 请求,您必须了解的第二件事是必须区分 header 和文档文本。因此,发送请求和接收数据很容易,但接收数据中实际文档从哪里开始是知识和其他问题的问题。就像在 HTTP 请求中一样,您会了解文档的长度、文档的类型和其他重要信息。
如果您想下载 PDF 文件,至少您必须知道 PDF 文档的开始和结束位置。除非您知道您无法识别文档的开头和结尾。
关于c - 从服务器下载pdf或图像并在C中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28259358/