Здравствуйте! Использовал boost::beast и решил получить HTML страницу ru.wikipedia.org/wiki/HTTP. Но при после отправки запроса ответ пришёл с пустым телом. В чём проблема?
#include <iostream>
#include <boost/beast.hpp>
using namespace boost::beast;
int main()
{
// Подключение к серверу
net::io_context io;
net::ip::tcp::socket socket(io);
net::ip::tcp::resolver resolver(io);
net::connect(socket, resolver.resolve("ru.wikipedia.org", "80"));
// Отправка запроса
http::request<http::empty_body> request(http::verb::get, "/wiki/HTTP", 11);
request.set(http::field::host, "ru.wikipedia.org");
request.set(http::field::user_agent, BOOST_BEAST_VERSION_STRING);
http::write(socket, request);
// Чтение ответа
std::string string_response;
{
flat_buffer buffer;
http::response<http::dynamic_body> response;
http::read(socket, buffer, response);
string_response = buffers_to_string(response.body().data());
}
// На консоль выводится пустая строка
std::cout << string_response << std::endl;
socket.shutdown(net::ip::tcp::socket::shutdown_both);
return 0;
}