问题标签 [cpp-netlib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
155 浏览

c++ - 在 html 头中未指定时如何读取以 cpp-netlib 结尾的 UTF-8

我正在尝试使用 cpp-netlib (在 linux 上加上 boost)获取一些网站的内容。netlib 和 boost 都是最新版本(本周安装,没有编译问题)。

关键是:从某些站点,我得到了正确的 UTF-8 编码(ç、á、î 等字符正确显示)。在其他网站上,这些字符以“?”的形式出现。黑色钻石里面。我注意到前者在标头中有一个关于 UTF-8 编码的显式 html 标签,而另一个则没有。

在浏览了一些文档和谷歌之后,我在我的代码中尝试了一些“标题请求”,但尽管我不知道我在做什么,但我没有成功。

我正在使用标准示例中给出的非常简单的代码。如下:

包括,命名空间...

注释掉的部分是我试图“更改标题”以使内容被请求视为“UTF-8”的部分(所以我想)。

对不起新手,但任何帮助或评论将不胜感激。

谢谢。

0 投票
1 回答
200 浏览

c++ - 我从 cpp-netlib 获得的示例代码无法编译

我怀疑这与没有正确链接我的库有关。这是我运行 make 时遇到的错误。我可以在 cpp-netlib 文件夹中很好地运行这个示例,但是当我尝试复制该代码并将其放在我自己的文件夹中时,它无法编译。

0 投票
1 回答
496 浏览

c++ - 从 Xcode 运行时,C++ 程序在 main 之前崩溃(但从命令行可以)

main在调试模式和发布模式下从 OS X 10.10.5 (Yosemite) 上的 Xcode 6.3.2 运行时,调用以下程序崩溃之前。

该应用程序使用 cpp-netlib v0.11.2。cpp-netlib v0.11.0 不会发生崩溃。

Xcode 显示一个窗口,显示“Xcode 意外退出”,有 3 个选项 - “忽略”、“报告”和“重新打开”。如果我选择“报告”,则会打开另一个窗口,其中包含更多信息。我在下面包含了它的一个片段。

请注意,如果我从命令行运行应用程序,则不会发生崩溃。

我如何找出确切的原因是什么?

0 投票
1 回答
329 浏览

c++ - cpp-Netlib 使用 HTTP 客户端正文时出现 Boost Mac OSX 段错误

我最近开始学习需要 Boost 的 cpp-netlib,并且在尝试从该站点http://cpp-netlib.org/0.11.2/examples/http/http_client 编译其中一个 cpp-netlib 示例时遇到了一些问题。 .html _ 我以前从未使用过 Boost,我想知道在编译程序时应该如何确定要链接的内容?我目前正在使用自制软件作为我的包管理器。我通过运行安装了boost

然后我通过运行安装了 cpp-netlib

我从站点复制并粘贴了代码示例,并对请求 URI 进行了硬编码

在与我的室友进行数小时的 Google 搜索后,我们找到了我需要链接的 boost 库,我们还发现 clang++ 正在查找我的 Mac 旧的过时 openssl,它预安装到操作系统中,而不是我通过自制软件安装的新版本。有了这些新知识,我们发现使用此命令进行编译是可行的

我现在在运行程序时遇到分段错误。当我尝试运行 lldb 来调试我的程序时,lldb 以“总线错误:10”退出。我发现运行这行代码时出现了seg错误

当我运行 valgrind 时,我得到以下输出

任何帮助深表感谢!

0 投票
1 回答
355 浏览

c++ - 为什么我的简单 cpp-netlib 程序需要这么长时间才能编译?

我最近开始学习 cpp-netlib 并且正在测试一个 netlibs 示例程序

经过数小时的研究,我发现编译程序所需的正确命令是

这是我发布的一个较旧问题的链接,详细说明了我如何找到该程序在使用 HTTP 客户端主体时使用 Boost Mac OSX 段错误编译 cpp-Netlib所需的一切

我发现编译大约需要 15 秒,我想知道是否有办法让我加快这个过程?编译这段代码真的这么慢吗,还是链接器需要花费大量时间来获取所有这些库,如果可以,我可以加快速度吗?

0 投票
0 回答
143 浏览

c++ - 处理对异步请求的响应时的标头

我正在使用 cpp-netlib 库来创建 HTTP GET 请求,文档显示了这个函数调用

response_ = client_.get(request_, callback)

的签名callback应该在哪里

void(iterator_range<char const *> const &, boost::system::error_code const&)

这使我可以分块处理响应的内容。但是,这不允许我在执行回调时获取标头信息(这将在 中response_,现在我对状态代码感兴趣)。有没有办法做到这一点?

0 投票
1 回答
1253 浏览

c++ - CMake 找不到 cpp-netlib 库

我最近开始学习 CMake,并决定将它用于我正在从事的一个旧项目。该项目有 cpp-netlib、boost 和 Openssl 作为依赖项。这是我想出的工作 CMakeLists.txt 文件。

我想知道是否有人知道为什么使用 FIND_PACKAGE 查找 cppnetlib 的注释掉部分不起作用?我使用自制软件来安装 cpp-netlib,当我运行 if(cppnetlib_FOUND) 时,我知道它找到了包,但似乎找不到库,所以当我尝试制作我的项目时,它错误地说它缺少来自 cpp- 的库网络库。我还注意到,当我在 FIND_PACKAGE 中将版本设置为 0.11.2(当前安装的版本)时,我收到一条消息说

没什么大不了的,因为它在我明确指定目录时起作用,但仍然想知道为什么我不能只使用 FIND_PACKAGE。

0 投票
1 回答
418 浏览

c++ - MAC OSX 上无法识别 Boost 网络库

所以我正在尝试编译我当前的代码:

从 [this post] 中收集的所有代码(如何从 C++ 程序中的网站获取数据)。因此,我尝试使用提供的一些不同脚本自行运行这个东西,但都没有奏效。以下是我尝试过的一些脚本:

我也试过:

并且还尝试过:

但我在阅读更多帖子后注意到 -I 用于表示其根目录中用于 boost 的头文件,而 -L 用于查找 boost 根目录的库。所以我不确定我到底下载了什么,因为我现在有 2 个副本,我不确定它们中的任何一个是否有效,我尝试了各种组合以试图让这个东西运行。显然,我到处都是 boost 的几个副本。 所以 /usr/local/Cellar 目录包含最新的..

/usr/local/Cellar/boost/1.59.0/include/boost

/usr/local/Cellar/boost/1.59.0/include/lib

此外,/usr/local/ 目录同时包含这两个..

/usr/local/include/boost/

/usr/local/lib

然后再次,

/usr/local/opt/boost/包括

/usr/local/opt/boost/include/lib

拥有多个副本会破坏流程吗?我感到很困惑。

这是我的目录结构:
目录结构

所以我已经尝试过解决这个问题,但我只是被难住了。我不擅长编写脚本(最近才从这个问题中学到了大部分内容),而且我根本不知道如何编译这个东西。任何帮助都是任何方式、形状或形式都是无法理解的。提前感谢任何提供帮助的人。

0 投票
1 回答
427 浏览

boost - Segmentation fault on using boost syslog and cpp-netlib

After adding boost syslog into source code, segmentation fault appears inside cpp-netlib library. I was able to prepare minimum working code snippet to reproduce the problem.

When last 2 lines are commented, segmentation fault disappears and everything works fine.

gdb stack trace (approximately, may vary):

Problem exists on Ubuntu 14.04 with cpp-netlib 0.11.2 and both boost versions 1_58_0 and 1_60_0. Boost, cpp-netlib and my application are compiled with -std=c++11.

Note 1. Segmentation fault appears inside cpp-netlib before reaching syslog_backend creation. Only presence of last 2 lines guarantees SIGSEGV reproduction.

Note 2. Reproduces only with syslog_backend. Any other logging targets (file, consol) work fine. The best idea I have is the problem may lay inside boost during static variables initialisation, but I have no proves regarding this version. Any suggestions?

0 投票
1 回答
319 浏览

c++ - 编译 cpp-netlib 源时出错

我已经按照文档中的描述安装了 c++ 网络库,并且我正在尝试手动编译http 客户端示例。我正在使用0.11库的版本。

我正在使用此命令进行编译:

我得到这个错误:

我不知道发生了什么。