如何使用 C++ 发出 HTTP 请求?

2024-01-18

有没有办法用C++轻松发出HTTP请求?具体来说,我想下载一个页面(API)的内容并检查内容是否包含1或0。是否也可以将内容下载到字符串中?


我有同样的问题。libcurl http://curl.haxx.se/libcurl/真的很完整。有一个 C++ 包装器curlpp http://www.curlpp.org/当您需要 C++ 库时,您可能会对此感兴趣。neon https://notroj.github.io/neon/是另一个有趣的 C 库,也支持WebDAV https://fr.wikipedia.org/wiki/WebDAV.

如果您使用 C++,curlpp 似乎很自然。源代码分发中提供了许多示例。 要获取 URL 的内容,您可以执行类似的操作(摘自示例):

// Edit : rewritten for cURLpp 0.7.3
// Note : namespace changed, was cURLpp in 0.7.2 ...

#include <curlpp/cURLpp.hpp>
#include <curlpp/Options.hpp>

// RAII cleanup

curlpp::Cleanup myCleanup;

// Send request and get a result.
// Here I use a shortcut to get it in a string stream ...

std::ostringstream os;
os << curlpp::options::Url(std::string("http://example.com"));

string asAskedInQuestion = os.str();

See the examples目录在curpp 源代码分布 https://github.com/jpbarrette/curlpp,还有很多更复杂的情况,以及简单 完整 最小一 https://github.com/jpbarrette/curlpp/blob/master/examples/example22.cpp使用curlpp。

我的2分钱...

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 C++ 发出 HTTP 请求? 的相关文章

随机推荐

  • 查看 Azure KeyVault 中 Secret 的内容

    这似乎是一个非常基本的问题 但我在 Azure 中创建了一个 KeyVault 并向其中添加了两个 Secret 它们是使用以下方法保护的纯文本 hello world 示例ConvertTo SecureString Using Get
  • gdb 'x' 命令有什么作用?

    在我寻求更多地了解计算机的一般知识时 我偶然发现了一本书 其中有一些关于反汇编 x86 汇编语言以及 C 和 x86 汇编之间的关系的章节 现在我一直在读这个GDB命令 但我无法完全理解它 该命令及其结果如下 gdb x 32xw esp
  • 分类:类内数据倾斜

    我正在尝试构建一个多标签分类器来预测某些输入数据为 0 或 1 的概率 我正在使用神经网络和 Tensorflow Keras 稍后可能是 CNN 问题如下 数据存在很大偏差 负面例子比正面例子多得多 大概是90 10 所以我的神经网络几乎
  • 使用 swift Codable 从 JSON 数组中提取数据

    我有一个像这样的 JSON 响应 我目前设计的可解码结构如下 struct PortfolioResponseModel Decodable var dataset Dataset struct Dataset Decodable var
  • C 原型范围

    我了解到 声明的类型说明符 参数列表中的标识符 函数原型中的声明 不是函数定义的一部分 标识符具有函数原型 范围 终止于 函数声明符 请参阅下面提到的C 程序 void fn struct st int a a struct st b st
  • 将排除与 Django 字段集一起使用

    我正在尝试为模型编写一个动态表单 允许具有不同权限的用户执行不同的操作 我希望下面的代码能够正常运行 以便非超级用户无法编辑 商家 块中的任何字段 class CategoryModelAdmin LWModelAdmin fieldset
  • Azure 应用服务已启动并正在运行,但显示默认的 Microsoft 页面

    我在 Microsoft Azure 上部署机器学习模型时遇到问题 将我的 github 存储库链接到 azure 后 它显示模型已成功部署 但是 当我单击创建的应用程序的网址时 它只显示 您的应用程序服务已启动并正在运行 是时候采取下一步
  • C# 无法加载 DLL

    如何在c 项目中加载dll error 无法加载 DLL Reader dll 无法加载指定的模块 成立 HRESULT 异常 0x8007007E 代码示例 DllImport Reader dll public static exter
  • Vim:删除光标周围的空行

    假设我正在编辑以下文档 光标 Lions Tigers Kittens Puppies Humans 我可以使用什么顺序删除周围的空白 以便留下 Lions Tigers Kittens Puppies Humans 注意 我正在寻找一个可
  • 用于发送电子邮件的正确 HTTP 动词

    对于仅让服务器发送电子邮件而不改变整个 Web 应用程序状态的请求 正确的 http 动词是什么 我正在开发一个 Rails 项目 我需要以某种方式定义路线 Rails application routes draw do get self
  • PyQt5 制作子类小部件

    所以我想知道如何制作小部件的子类 例如 如果我想创建一个小部件 它继承了 QtWidgets QPushButton 的方法和属性 但是我会在此基础上创建额外的方法和属性 class Coord QtWidgets QPushButton
  • java模块可以调用c模块吗?

    只是出于兴趣 是否可以从 java 模块调用 C 模块 如果是这样 该怎么办 是的 你可以使用Java 本机接口 http java sun com j2se 1 3 docs guide jni 去做这个
  • PL/SQL:是否有完全停止脚本执行的指令?

    我试图在 PL SQL 脚本的开头对数据库模式进行一些检查 如果检查给出不成功的结果 我想停止脚本 以防止执行下一条指令 我有这样的东西 1st line of PL SQL script DECLARE SOME COUNT INTEGE
  • 为什么算术运算符的参数类型默认为 int?

    我是 F 新手 我惊讶地发现f x y x y实际上是int gt int gt int 显然 https stackoverflow com questions 501069 functions with generic paramete
  • Delphi:“TObject 数组”类型参数上的 SetLength()

    我正在尝试调整作为参数传递的某个类的数组的大小 例如 procedure Resize MyArray Array of TObject begin SetLength MyArray 100 end 但是 这会引发错误 E2008 不兼容
  • 如何阻止异步 tcp .NET 代码耗尽整个系统的资源

    在我的一些异步 TCP 服务器代码中 偶尔会发生错误 导致进程消耗整个系统的内存 在查看日志 事件查看器和一些MS docs http support microsoft com kb 947862如果 调用应用程序多次对同一客户端进行异步
  • 设置 TCP/IP 客户端和服务器通过网络进行通信

    我正在尝试学习一些有关套接字编程的知识 并且偶然发现了 TcpListener 和 TcpClient 来使用 因为我读到它们对于初学者来说稍微容易一些 我想要完成的基本要点是拥有一个可以在我的笔记本电脑和同一网络上的另一台笔记本电脑上运行
  • 对 pandas 数据框进行子集化的最佳方法[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 嘿 我是 Pandas 新手 我刚刚遇到df query 为什么人们会使用df query 什么时候可以使用括号表示法直接过滤数据框 panda
  • 如何在 JavaScript 中添加 HTML 标签?

    我想在我的 javascript 中使用一个 html 标签 但不知道如何使用它 For ex p An absolute URL a href https www w3schools com W3Schools a p 这是我的标签 我想
  • 如何使用 C++ 发出 HTTP 请求?

    有没有办法用C 轻松发出HTTP请求 具体来说 我想下载一个页面 API 的内容并检查内容是否包含1或0 是否也可以将内容下载到字符串中 我有同样的问题 libcurl http curl haxx se libcurl 真的很完整 有一个