studio - ¿Qué biblioteca C++ debo usar para implementar un cliente HTTP?
microservices c++ (8)
Estoy buscando una biblioteca C ++ que implemente o habilite la implementación de un cliente HTTP. También debe manejar las cookies.
¿Qué propones?
Puedes probar WinInet
http://msdn.microsoft.com/en-us/library/aa385331(VS.85).aspx
A diferencia de WinHTTP, está más orientado al cliente.
Curl ++ : es una opción, especialmente si quieres cosas con más estilo C ++.
cpp-netlib : muy bueno y simple de usar, disponible en ubuntu
sudo apt-get install libcppnetlib-dev
ejemplo:
using namespace boost::network;
using namespace boost::network::http;
client::request request_("http://127.0.0.1:8000/");
request_ << header("Connection", "close");
client client_;
client::response response_ = client_.get(request_);
std::string body_ = body(response_);
En Windows puede conducir IE usando la interfaz IWebBrowser2
.
Si es para Windows, eche un vistazo a los Servicios HTTP de Windows (WinHTTP)
http://msdn.microsoft.com/en-us/library/aa384273(VS.85).aspx
Los servicios HTTP de Microsoft Windows (WinHTTP) proporcionan a los desarrolladores una interfaz de programación de aplicaciones cliente (API) HTTP para enviar solicitudes a través del protocolo HTTP a otros servidores HTTP.
WinHTTP ofrece una interfaz de programación de aplicaciones (API) C / C ++ y un componente de automatización de Modelo de Objetos Componentes (COM) adecuado para su uso en aplicaciones basadas en ASP (Active Server Pages).
Para cookies http://msdn.microsoft.com/en-us/library/aa383261(VS.85).aspx
Eche un vistazo a las bibliotecas de Poco .
Empecé a usarlos ya que son portátiles y es un placer trabajar con ellos. Simple y limpio, aunque no he buceado en nada elegante por el momento.
Todas las bibliotecas alternativas están disponibles aquí, si necesita API http complejas, intente curl, si solo desea obtener un archivo, intente http-tiny