【发布时间】:2015-05-14 03:21:57
【问题描述】:
所以这个问题之前已经被问过,但指向的一般答案是使用外部库,例如 cURLpp。所以我很好奇 HTTP 请求是否可以仅使用 C++14 的标准库来完成。这有多难?
例如,我想获取一个 XML 文档并将其存储在要解析的字符串中。必须采取哪些步骤来实现这一目标?
如果有人好奇,我将把它作为一种学习体验来更好地了解 HTTP 请求的工作原理。
【问题讨论】:
-
标准库里什么都没有,所以不可能。
-
标准库中没有套接字的概念,你运气不好
-
最好的选择可能是使用 Boost.Asio,因为它会在未来的某个时候成为 standardized。
-
是的,我链接的文件是标准化提案
-
您必须使用套接字库进行通信。但是,您可以在不使用
CURL的情况下执行 HTTP,它是一个简单的基于文本的协议。但是,对于不那么琐碎的任务,您最终会重新发明这么多轮子,以至于您可能一开始就使用CURL。但是对于基本任务,我一直使用套接字(在将它们包装在std::iostream中之后)。它非常轻量级并且解决了依赖问题。
标签: c++ httprequest c++14