Как сохранить websocket на boost::beast?
Я ссылался здесь на документы о boost::beast websocket-async.
Я удалил "ws_.async_close(websocket::close_code::normal..." в функции on_read, чтобы избежать отключения.
Но веб-розетка зверя отключается, заканчивая on_read.
std::make_shared<session>(ios)->run(host, port, text);
ios.run(); // I want to keep running it until explicit calling close.
1 ответ
Решение
Заменить код
// Close the WebSocket connection
ws_.async_close(websocket::close_code::normal,
std::bind(
&session::on_close,
shared_from_this(),
std::placeholders::_1));
с логикой, которую вы хотите. Что вы хотите, чтобы вместо этого произошло? Хотите узнать больше? Затем сделайте еще одно чтение, как указано выше:
// Read a message into our buffer