Hacer petición HTTP con C y C++ es totalmente posible incluso siendo lenguajes de bajo nivel. Hacerlo sin librerías requeriría un esfuerzo enorme, pero afortunadamente existe cURL y la librería libcurl que podemos integrar en los proyectos de C para tener un cliente HTTP.
Por ello es que en este post te enseñaré a instalar libcurl para ANSI C y C++ en Windows usando el entorno MSYS2. Igualmente aprenderás a compilar con libcurl
e incluir el encabezado curl.h
.
Instalando MSYS2
En caso de que no cuentes con el entorno MSYS2 te dejo con un post para que instales el compilador de C y C++ junto con esta herramienta, de este modo tendrás gcc
y g++
listo para compilar proyectos.
Actualizando paquetes
Una vez que hayas instalado MSYS2 y hayas hecho tu hola mundo con C, abre la terminal de MSYS2 y ejecuta:
pacman -Syuu
Hazlo las veces que sea necesario. Acepta la instalación en caso de que se te pregunte, y si la terminal te dice que los procesos deben cerrarse, cierra todo, vuelve a abrirla y a ejecutar el comando hasta que te muestre there is nothing to do.
Instalar libcurl
Finalmente ejecuta lo siguiente para instalar la librería de cURL llamada libcurl:
pacman -S mingw-w64-x86_64-curl
Una vez instalada ya puedes incluir el curl.h en tus proyectos y usar las funciones curl_easy_*
. Para compilar, agrega -lcurl
, por ejemplo:
gcc archivo.c -o imprimir.exe -Wall -lcurl
De este modo habrás instalado la librería libcurl. Puedes hacer peticiones HTTP de todo tipo como GET, POST, PUT, DELETE, etcétera. Todo usando el lenguaje de programación C.
Más adelante traeré tutoriales para hacer una petición HTTP con C. Vas a encontrar más detalles sobre el uso de la librería en el siguiente enlace: https://curl.se/libcurl/c/
Ejemplos
Ahora que has instalado la librería puedes revisar un ejemplo de petición HTTP GET o POST.
Tutorial en vídeo
He grabado un vídeo explicando cómo instalar la librería cURL para C: