C na WEB

Criar aplicações capazes de interagir com o mundo externo, através de solicitações web, é uma prática muito util.

Estaremos abordando aqui, como fazer isso.

Estaremos explicando agora a API LIB CURL.

Esta api é suportada pelo fabricante:

https://curl.se/

Baixando no Ubuntu

Para baixar no ubunto execute os seguintes comandos:

apt install libcurl4 libcurl4-gnutls-dev

Apos instalar rode os seguintes comandos:

sudo ln -s /usr/include/x86_64-linux-gnu/curl /usr/include/curl

sudo ln -s /usr/lib/x86_64-linux-gnu/libcurl.so.4 /usr/lib/libcurl.so.4

Estes links irão permitir incluir os includes nos locais corretos e o lib p sua perfeita compilação.

Rodando um exemplo

Crie uma pasta no seu linux chamado sample, nela realize as seguintes operações:

  1. Crie um arquivo Makefile, conforme o que segue:

all: compile

compile:
	gcc simple.c  -lcurl	-o simple

2. Agora crie um arquivo simple.c, conforme segue:

#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, "https://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;
}

O exemplo acima é uma cópia do código apresentado na documentação.

O Repositório do projeto pode ser visto no link abaixo:

https://github.com/curl/curl/tree/master/docs/examples

Para compilar basta dar make, conforme o exemplo:

Segue o exemplo rodando:

Em breve detalharei sobre como funciona este exemplo.