Esta é uma biblioteca leve, somente para cabeçalho, baseada em impulso, que fornece primitivas de rede do lado do cliente para organizar e implementar facilmente a transmissão de dados com pontos de extremidade remotos.
Esta biblioteca:
Se você estiver escrevendo software no C ++, que se comunica com outros serviços como cliente, provavelmente já veio com o problema - precisa implementar a camada de conectividade para fornecer transporte de rede a todos os serviços relacionados. É exatamente isso que o objetivo desta biblioteca de resolver.
Os soquetes são implementados no topo do boost::asio::basic_socket e fornecem aulas com controle de tempo limite; portanto, na maioria dos casos, é suficiente para ligar para send () / receba () / write_some () / read_wome () com um prazo ou tempo limite. Os dados fornecidos às operações de E/S devem ser envolvidos no boost::asio::buffer . Basicamente, esses clientes são boost::asio::ip Sockets e têm a mesma interface.
Cliente transmite aulas:
stream_client::tcp_client - cliente de soquete de fluxo TCP simples. Suporta send () / rececive () para transferências admitidas de buffer inteiro junto com write_some () / read_wer () para transferir pelo menos alguma coisa.stream_client::udp_client - cliente de soquete UDP simples. Suporta apenas send () / receba () sem qualquer reconhecimento conforme as especificações UDP.stream_client::ssl::ssl_client - cliente TCP criptografado por SSL. Tenha as mesmas funções que tcp_client Plus SSL Handshake e Controle de contexto.stream_client::http::http_client - cliente http. Envolva tcp_client com boost::beast::http::parser e boost::beast::http::serializer e tenha executado () função para fazer chamadas de reposição de solicitação.stream_client::http::https_client - cliente https. O mesmo que http_client , mas usa o cliente ssl_client abaixo.