现在的位置: 首页 > 综合 > 正文

boost 网络编程

2018年01月30日 ⁄ 综合 ⁄ 共 935字 ⁄ 字号 评论关闭

boost::asio::io_service io_service;
 asio::ip::tcp::resolver resolver(io_service);
 asio::ip::tcp::resolver::query query(host, port);
 asio::ip::tcp::resolver::iterator endpoint_iterator = resolver.resolve(query);
 asio::ip::tcp::resolver::iterator end;

 asio::ip::tcp::socket socket(io_service);
 boost::system::error_code error = boost::asio::error::host_not_found;
 while (error && endpoint_iterator != end) {
  socket.close();
  socket.connect(*endpoint_iterator++, error);
 }

 boost::asio::streambuf request;
 std::ostream request_stream(&request);
 request_stream << "Hello World!" << "/r/n";

 // Send the request.
 boost::asio::write(socket, request);

 // Read the response status line.
 boost::asio::streambuf response;
 boost::asio::read_until(socket, response, "/r/n");

 std::istream response_stream(&response);
 std::string content;
 response_stream >> content;
 std::string message;
 std::getline(response_stream, message);

 cout << "content: " << content << endl;
 cout << "message: "  << message << endl;

抱歉!评论已关闭.