Primeros pasos con curl

Usando curl a través de la línea de comando

Mostrar versión curl:

curl --version

OBTENER un recurso remoto y mostrarlo en la terminal:

curl http://stackoverflow.com

OBTENGA un recurso remoto y guárdelo en un archivo local:

curl -o file https://stackoverflow.com

Agregue encabezados a la respuesta:

curl -i http://stackoverflow.com

Solo encabezados de salida:

curl -I http://stackoverflow.com

Transferir datos usando curl

cURL es el nombre del proyecto que representa: ‘Cliente para URL’ y también se llama Biblioteca de solicitud de URL de cliente

combina dos paquetes separados: curl y libcurl.

  1. curl es una herramienta de línea de comandos utilizada para obtener documentos/archivos o enviar documentos a un servidor, utilizando cualquiera de los protocolos admitidos: DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP , LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMTP, SMTPS, Telnet y TFTP.

  2. libcurl es la biblioteca subyacente que curl usa para hacer el trabajo real de transferencia y trabajo en red. libcurl es utilizado por miles de servicios, aplicaciones y dispositivos y, muy a menudo, a través de uno de los “enlaces de lenguaje” que permite a los programadores de lenguajes de nivel superior acceder a sus poderes.

Usar curl en PHP para obtener datos

<?php
 
    $ch = curl_init(); //curl handler init

    curl_setopt($ch,CURLOPT_URL,"http://www.google.com/search?q=curl");
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);// set optional params
    curl_setopt($ch,CURLOPT_HEADER, false); 
 
    $result=curl_exec($ch);
 
    curl_close($ch);
 
    echo $result;
?>

Use la API libcurl easy C para obtener un recurso remoto

#include <stdio.h>
#include <curl/curl.h>

int main(void)
{
  CURL *curl;
  CURLcode res;

  curl = curl_easy_init();
  if(curl) {
    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");

    /* example.com is redirected, so we tell libcurl to follow redirection */
    curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);

    /* Perform the request, res will get the return code */
    res = curl_easy_perform(curl);
    /* Check for errors */
    if(res != CURLE_OK)
      fprintf(stderr, "curl_easy_perform() failed: %s\n",
              curl_easy_strerror(res));

    /* always cleanup */
    curl_easy_cleanup(curl);
  }
  return 0;
}