boost io_service.accept : Get URI called

标签 boost boost-asio

我想要通过 boost 调用 URI。

如果http://localhost:8080/users/4被调用,我想知道URI或者只是/users/4

#include <boost/bind.hpp>
#include <boost/asio.hpp>
using boost::asio::ip::tcp;

int main()
{
  boost::asio::io_service io;
  tcp::acceptor acceptor(io, tcp::endpoint(tcp::v4(), 8080));
  tcp::socket socket(io);
  acceptor.accept(socket);

  // Do stuff to get URI
  // ...

  if (uri == "http://localhost:8080/users/4") {
     std::cout << "User 4 uri called" << std::endl;
  }
  return 0;
}

最佳答案

查看ASIO's http server exampleconnection::handle_read 方法使用 request_parser 类实例解析请求,结果是 request 的实例。结构包含一个必需的 URI。

关于 boost io_service.accept : Get URI called,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16980449/

相关文章:

c++ - 一个线程Boost的死锁

c++ - Boost 不可复制是私有(private)错误

thread-safety - asio隐式链和数据同步

c++ - boost::asio::socket 线程安全

c++ - Boost.Asio 解析器的结果不同

c++ - 如何将 C++ MySQL 连接器库链接到 Cmake?

c++ - 优化生产者-消费者线程之间的交互

c++ - 等待 boost 中的多个条件变量?

c++ - 将 boost lambda 与复合表达式一起使用

c++ - 将缓冲区 boost 为 char*(无 std::string)