Я пытаюсь написать простой чат-клиент с использованием веб-сокетов, мой код пока можно найти здесь .Если я программно отправляю 2 или более сообщений, это работает, но как только я пытаюсь дождаться пользовательского ввода, сообщения не уходят:
// This works
std::string message1 = "cpp1";
c->send(hdl, message1, websocketpp::frame::opcode::text);
std::string message2 = "cpp2";
c->send(hdl, message2, websocketpp::frame::opcode::text);
Программа должна принимать пользовательский ввод, поэтому я попытался:
do {
std::cout << "What should I tell the ws?";
std::getline(std::cin, input);
if (input == "exit") {
keep_running = false;
}
else {
c->send(hdl, input, websocketpp::frame::opcode::text);
std::cout << "Told ws " << input;
}
} while (keep_running);
Это фактически показывает сообщение "Told ws", но сервер ws не получает сообщение.Я подтвердил, что сервер ws отлично работает со сторонним клиентом (расширение Google Chrome).Похоже, что сообщения буферизуются, но даже при выходе из программы они не отправляются.
Я использую библиотеку websocketpp и компилирую в Visual Studio Community 2017
Любая подсказка?