Por Ivan de Souza

Analista de Marketing na Rock Content.

Publicado em 17 de julho de 2020. | Atualizado em 17 de julho de 2020


O cURL é uma abreviação para “URL do cliente”, um comando Linux usado para verificar a disponibilidade da URL, testar a saída de uma API antes de implantá-la em uma infraestrutura de TI ou para executar a transferência de dados.

O cURL é uma ferramenta de linha de comando que possibilita que desenvolvedores e usuários de serviços de hospedagem façam solicitações HTTP a partir do shell e protocolos como HTTPS, FTP, FTPS, IMAP, IMAPS, POP3, POP3S, SMTP e SMTP.

O nome cURL deriva de “URL do cliente” e a autoria dessa ferramenta é do sueco Daniel Stenberg.Inicialmente, ele tinha o objetivo de desenvolver um bot para baixar periodicamente taxas de câmbio de uma página da web e converter os valores em dólar.

Como é um projeto de código aberto, pode ser incrementado por uma comunidade de desenvolvedores, o que contribui constantemente para novas características e funcionalidades. Neste artigo, discutimos um pouco mais sobre o cURL e como usá-lo. Veja, a seguir, quais comandos cURL utilizar para:

  • Testar uma API
  • Fazer o download de um documento
  • Reiniciar um download interrompido
  • Fazer o download de múltiplos arquivos
  • Baixar URLs de um arquivo
  • Usar um proxy com ou sem autenticação
  • Consultar cabeçalhos HTTP
  • Download ou upload de arquivos de um servidor FTP com ou sem autenticação
  • Descobrir os cookies armazenados durante um acesso

Testar uma API

Para testar o funcionamento de uma API, é preciso enviar argumentos por meio do método POST ou JSON com alguns parâmetros específicos. A simulação do comportamento de um formulário HTML por meio do comando cURL pode ser feito a partir de argumentos como:

curl --data "name=joao&surname=emanuel" http://www.seudominio.com

Nesse caso, a ramificação --data tem a mesma funcionalidade do-d. Com ele, o método mudará para POST automaticamente. No entanto, o usuário pode usar um -X e adicionar a requisição para especificar o método que deve ser chamado entre aspas antes do -d, como mostrado a seguir:

curl -X "POST" \-d "name=joao&surname=emanuel" http://www.seudominio.com

Fazer o download de um documento

Para fazer o download de um documento,você pode usar o cURL com:

  • -O: salva o arquivo no diretório de trabalho atual com o mesmo nome do local remoto;
  • -o: permite que você especifique um nome de arquivo e um local diferente do de origem. Veja os exemplos de comandos abaixo:
$ curl -O http://seudominio.com/seuarquivo.tar.gz # Save as seuarquivo.tar.gz
$ curl -o novonome.tar.gz http://seudominio.com/seuarquivo.tar.gz # Save as novonome.tar.gz

Reiniciar um download interrompido

Se um download for interrompido por alguma razão (Ctrl + c, por exemplo), você pode reiniciá-lo por meio do -C. Essa ramificação dentro do comando cURL orienta o reinício do download a partir do momento em que ele parou.

$ curl -C - -O http://seudominio.com/seuarquivo.tar.gz
curl

Fazer o download de múltiplos arquivos

Com o comando cURL e a ramificação -O, o usuário também pode executar o download de mais arquivos simultaneamente.

$ curl -O http://seudominio.com/info.html -O http://outrodominio.com/about.html 

Baixar URLs de um arquivo

Se o usuário combina o comando cURL com xargs, consegue fazer o download de todas as URLs presentes em um arquivo de uma vez. Esse processo pode ser bem útil na análise e visualização de dados.

$ xargs -n 1 curl -O < listurls.txt
curl

Usar um proxy com ou sem autenticação

Para encontrar um servidor proxy na porta 8080, o usuário pode usar o seguinte comando:

$ curl -x proxy.seudominio.com:8080 -U usuario:senha -O http://seudominio.com/seuarquivo.tar.gz

Caso o proxy não exija autenticação, basta eliminar o “usuário:senha” do código.

Consultar cabeçalhos HTTP

Os cabeçalhos HTTP permitem ao servidor enviar informações adicionais sobre o site, como detalhes sobre a execução da solicitação, que podem ser interessantes para o usuário.

Powered by Rock Convert

Apesar de essas informações ficarem disponíveis nas ferramentas de desenvolvedor dos navegadores, por meio do cURL o acesso também é rápido: basta escrever junto ao comando cURL a ramificação -I e o endereço do site pelo qual você deseja visualizar os dados:

$ curl -I www.seudominio.com

Download ou upload de arquivos de um servidor FTP com ou sem autenticação

O download dos arquivos em um servidor FTP remoto também pode ser realizado por meio do cURL. Digite a ramificação -u para informar o usuário e a senha de acesso ao servidor (caso eles sejam exigidos), a ramificação -vsc nnnO e o diretório onde o arquivo foi armazenado no banco de dados (MySQL, por exemplo). Esse comando fará o download do arquivo requisitado no diretório de trabalho atual.

$ curl -u usuario:senha -O ftp://seuservidorftp/seuarquivo.tar.gz 

Já o upload pode ser executado a partir da ramificação -T, seguido pelo nome do arquivo e diretório FTP do servidor:

$ curl -u usuario:senha -T seuarquivolocal.tar.gz ftp://seuservidorftp

Descobrir os cookies armazenados durante um acesso

Caso o usuário queira visualizar quais cookies foram armazenados em seu equipamento durante um acesso a um site, o cURL também consegue exibir essas informações. Suponha que você tenha navegado pelo site <https://www.cnn.com> para ler algumas notícias:

A ramificação --cookie-jar seguida do nome como o arquivo será salvo em .txt, da URL do site que você deseja analisar e da ramificação -O salva as informações em seu diretório:

$ curl --cookie-jar cnncookies.txt https://www.cnn.com/index.html -O

Já a ramificação ~]$ cat seguida do nome em que o arquivo foi salvo em .txt retorna os dados requisitados:

Curl

Para enviar os cookies recuperados em solicitações subsequentes para o mesmo site de origem, basta usar a ramificação --cookie:

$ curl --cookie cnncookies.txt https://www.cnn.com

Alguns comandos, como--location-trusted, semelhante ao -L, permitem o envio de usuário e senha para todos os hosts para os quais o site redireciona. Isso poderá criar uma vulnerabilidade relacionada à segurança e, por isso, é importante usar certificados de segurança como o SSL e o TLS no seu site.

Desenvolvedores podem solicitar o cURL a partir de qualquer terminal, uma vez que conseguem fazer o download por meio do apt-get no Linux. Apesar disso, a ferramenta já vem pré-instalada em sistemas operacionais baseados em Linux.

Se quiser aprofundar mais nessas requisições em cURL, o usuário pode consultar a documentação oficial ou a página do comando.

Mas se você ainda tem muitas dúvidas quanto às linhas de códigos e suas aplicações no gerenciamento do seu site em WordPress, saiba que poderá contar com a ajuda especializada da equipe do Rock Stage.

Quer aprender mais sobre os comandos para HTTP antes de estudar mais a fundo o cURL? Acesse nosso artigo!

100.000 pessoas não podem estar enganadas
Deixe seu email e receba conteúdos antes de todo mundo

Posts relacionados

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *