- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在考虑将 cpp netlib 用于新项目。所有示例都显示了以阻塞方式读取响应正文:
client::response response_ = client_.get(request_);
std::string body_ = body(response_);
如果我用异步标签构造我的客户端对象:
basic_client<http_async_8bit_udp_resolve_tags, 1, 1> client_();
这有什么影响?
是否有可能获得 body
的结果?包装器作为 boost::shared_future<std::string>
?
我是否只需要将阻塞调用包装在它自己的线程中?
最佳答案
查看当前的http客户端文档:http://cpp-netlib.org/0.12.0/reference/http_client.html
您可以选择在 get
或 post
调用中提供回调函数或对象:
struct body_handler {
explicit body_handler(std::string & body)
: body(body) {}
BOOST_NETWORK_HTTP_BODY_CALLBACK(operator(), range, error) {
// in here, range is the Boost.Range iterator_range, and error is
// the Boost.System error code.
if (!error)
body.append(boost::begin(range), boost::end(range));
}
std::string & body;
};
// somewhere else
std::string some_string;
response_ = client_.get(request("http://cpp-netlib.github.com/"),
body_handler(some_string));
client::response
对象已经封装了 future
对象:
The response object encapsulates futures which get filled in once the values are available.
关于c++ - 使用 cpp-netlib 的异步客户端响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37056587/
我在理解 cpp netlib 文档时遇到一些问题。 member name type description headers vector Vecto
我认为我的问题真的很微不足道,但我还是无法让它发挥作用 std::string url="www.google.it"; boost::network::http::client client1_(_
类似于(但比)这个 unanswered question about headers in cpp-netlib HTTP server side 的问题。 这是在 Linux/Debian/Sid
我想在我的 Windows 上运行的 C++ 项目中使用 cpp-netlib 库。我已严格按照 http://cpp-netlib.github.com/getting_started.html 下
我想将库 cpp-netlib 用于 C++ 项目。因此,我在自制软件的帮助下安装了 boost 库(操作系统是 Mac OS X 10.8)。然后我从项目主页下载了cpp-netlib,使用cmak
是否有可能通过 cpp-netlib 获得接受的连接?并像普通 TCP Boost.asio 套接字一样使用它? 最佳答案 boost::network::http::impl::http_async
我想知道是否有可能获得 0.9.1 版 cpp-netlib 中现在存在的 Windows 静态库(x86 和 x64)的二进制文件? 坦率地说,对我来说在 Windows 上编译它是一件痛苦的事情。
进程文件: Netlib or Netlib.exe 进程名称: Crater-A Trojan/Worm 进程类别:存在安全风险的进程 英文描述: Netlib.exe is a proc
// Copyright 2009 (c) Tarro, Inc. // Copyright 2009 (c) Dean Michael Berris // Distributed under th
我在 Visual Studio 2010 中使用 cpp-netlib-0.9.4。我有一个 make_header 函数,如下所示: http::client::request* Interfac
我设法安装并运行了 boost,我还部分地编译了 cpp-netlib 的示例代码,但我陷入了这个编译错误: obj\Debug\main.o||In function 'ZN5boost7netwo
我正在尝试使用 cppnetlib,甚至是 boost asio 库进行连接,以执行简单的 url 获取并下拉生成的页面。 我已经让它与 http 一起工作,甚至 https 使用 cppnetlib
我正在尝试使用 boost 和 cpp-netlib。 cpp-netlib 的静态库大约是40m(发行版),即使链接到一个小的helloworld 也可能非常慢。所以我想在开发时尝试动态dll+ i
Spark 的 MLLib 指出 https://github.com/fommil/netlib-java是 dependency . 但是,这个 repo 已从 github 中删除(上面的链接已
背景与问题 我在运行 Fedora 23 的机器上运行 Spark 的 MLLib 中的示例时遇到了一些麻烦。我根据 Spark 文档使用以下选项构建了 Spark 1.6.2: build/mvn
我最近开始学习 cpp-netlib 并且正在测试一个 netlibs 示例程序 #include #include int main() { using namespace boost:
我正在考虑将 cpp netlib 用于新项目。所有示例都显示了以阻塞方式读取响应正文: client::response response_ = client_.get(request_); std
我正在尝试对我的非工作 apache spark 和 netlib 设置进行故障排除,但我不知道下一步该怎么做。 这里有一些信息: Spark 1.3.1(但也尝试过 1.5.1) 具有 3 个节点的
[已解决] 创建了从/usr/lib/lib/* 到/usr/lib* 的符号链接(symbolic link) [更新 3] 新版本: 好吧,我想我修复了一些东西 使用 find/-name "li
我正在使用 cpp-netlib (v0.11.0) 发送 HTTP 请求。 我想知道在发送 HTTP POST 请求时是否可以更改超时期限。 我正在运行一些单元测试,其中之一将 HTTP 请求发送到
我是一名优秀的程序员,十分优秀!