cURL é uma ferramenta que permite a comunicação entre um dispositivo e um servidor direto do terminal. Descubra mais sobre como utilizá-la.

O cURL é uma ferramenta indispensável para quem desenvolve ou administra sistemas que buscam interagir com servidores de forma prática e eficiente.  

Utilizando uma simples linha de comando, ele permite transferir dados, realizar testes em APIs, algo que todo desenvolvedor deve conhecer, e até mesmo automatizar tarefas complexas.  

Neste post, você aprenderá o que é o cURL, além de conhecer alguns de seus principais comandos. Prepare-se para dominar uma das ferramentas mais versáteis no mundo da tecnologia! 

Navegue pelo índice

    O que é cURL?   

    O cURL (Client URL) é uma ferramenta de linha de comando amplamente utilizada para transferir dados entre um cliente e um servidor utilizando diversos protocolos, como HTTP, HTTPS, FTP, SMTP, entre outros.  

    Essa é uma solução versátil para qualquer pessoa que gerencia sistemas usados para interagir com APIs. Além disso, também é útil para realizar testes de conectividade e automatizar tarefas de transferência de dados.  

    O cURL também suporta operações seguras por meio de certificados SSL, garantindo proteção em conexões criptografadas. 

    Por que usar o cURL?  

    O cURL pode ser útil para criar um script que emita programaticamente várias solicitações de API ou gravar as respostas em um arquivo. Ele também ajuda quem prefere uma boa ferramenta de linha de comando a um aplicativo de interface gráfica do usuário (GUI). 

    Independentemente de você realmente usar cURL, é importante pelo menos estar familiarizado com ele, porque a documentação da API geralmente contém exemplos que mostram como emitir solicitações de API usando cURL. 

    Em APIs mais recentes, que ainda não oferecem kits de desenvolvimento de software (os famosos SDKs) correspondentes em várias linguagens de programação, geralmente são encontrados apenas exemplos de cURL nos documentos. 

    Nesse sentido, é necessário pelo menos entender a sintaxe cURL, para ler e compreender esses exemplos. 

    Principais aplicações no dia a dia   

    No dia a dia de profissionais desenvolvedores e administradores de sistemas, o cURL desempenha papéis importantes: é amplamente usado para testar endpoints de APIs RESTful, verificando se as respostas estão corretas e no formato esperado.  

    Outra aplicação frequente é a transferência de arquivos entre servidores, algo essencial para a manutenção de sistemas e backups.  

    Além disso, o cURL é útil para verificar a conectividade de redes e a resposta de servidores, ajudando a diagnosticar problemas de forma rápida.  

    Também é comum utilizá-lo para baixar dados públicos de websites e enviar informações a servidores por meio de métodos como POST e PUT, otimizando fluxos de trabalho. 

    Leia mais: 

    Benefícios do cURL 

    O cURL oferece uma série de benefícios que o tornam indispensável para quem trabalha com tecnologia.  

    Um dos principais é sua compatibilidade multiplataforma, funcionando em sistemas como Linux, macOS e Windows. Isso garante versatilidade para usuários de diferentes ambientes. Ele também suporta uma ampla gama de protocolos, ampliando as possibilidades de uso.  

    Para quem busca automação, o cURL é uma excelente escolha, pois permite criar scripts e agendar tarefas programadas com facilidade.  

    Outro benefício relevante é o suporte integrado para certificados SSL, proporcionando conexões seguras e protegidas. Por fim, o cURL se integra perfeitamente com APIs, possibilitando testes rápidos e precisos, algo essencial no desenvolvimento moderno. 

    Primeiros passos no cURL 

    No Windows ou MacOS, a máquina provavelmente tem o cURL instalado por padrão. Ainda assim, para determinar se o cURL está instalado, abra um prompt de comando e digite o seguinte: 

    $ curl –help 

    Se o comando não for reconhecido, então o cURL ainda não está instalado. 

    Caso o comando resulte na exibição de algum conteúdo de ajuda limitado, então isso significa que o cURL já está instalado. 

    Download do cURL   

    O cURL geralmente vem pré-instalado na maioria dos sistemas Linux e macOS. No entanto, caso seja necessário instalá-lo, siga os passos abaixo: 

    Linux 
    sudo apt update 
    sudo apt install curl 

    Windows 
    Baixe o cURL no site oficial (https://curl.se) e siga as instruções para instalação. Certifique-se de adicionar o executável ao PATH do sistema. 

    Após a instalação, digite curl –version no terminal para confirmar que o cURL foi instalado corretamente. 

    Primeiro comando   

    Depois de instalar o cURL, você pode começar com um comando básico, como: 

    curl https://www.google.com 

    Esse comando realiza uma solicitação HTTP GET à página inicial do Google e retorna o conteúdo no terminal. Ele serve como uma introdução prática para entender o funcionamento do cURL.  

    O resultado exibido no terminal será o HTML bruto da página solicitada. Isso pode ser útil para verificar se um site está online ou para analisar o código-fonte de uma página de maneira rápida. 

    E caso queira explorar mais, é possível adicionar parâmetros ao comando para obter informações específicas. Por exemplo, usar curl -I https://www.google.com retorna apenas os cabeçalhos HTTP da resposta, permitindo verificar detalhes como o status do servidor ou a presença de redirecionamentos.  

    Experimentar diferentes opções ajuda a compreender melhor o potencial do cURL em tarefas cotidianas e profissionais. 

    Principais comandos cURL 

    Uma vez iniciados os procedimentos para instalar o cURL, você pode utilizar os comandos que estão abaixo para começar a trabalhar com ele. 

    1. Obter uma resposta de um servidor 

    Tudo no servidor é uma resposta ao pedido; portanto, ter uma página HTML é o mesmo que baixar um arquivo. 

    Para obter uma resposta HTML de: https://ajuda.locaweb.com.br/wiki/curl 

    $ curl https://ajuda.locaweb.com.br/wiki/curl/ 

    Já para obter a lista de postagens como resposta de um servidor (https://blog.locaweb.com.br/): 

    $ curl https://blog.locaweb.com.br/ 

    Sabendo como obter uma resposta de um servidor, qualquer arquivo pode ser baixado, como o Brasão Nacional, por exemplo: 

    $ curl https://www.gov.br/planalto/pt-br/conheca-a-presidencia/acervo/simbolos-nacionais/brasao-da-republica/brasaooficialcolorido.png –output brasao.png 

    O comando acima despejará os dados da imagem binária, que não pode ser visualizada no terminal. Para isso, é preciso salvá-los e usar um visualizador de fotos para vê-los. 

    2. Salvar o arquivo com um nome de arquivo padrão 

    Cada arquivo que é servido na internet tem um nome. Para usar o mesmo nome de arquivo do conteúdo baixado, use o sinalizador -O. 

    $ curl -O http://www.google.com/robots.txt 

    3. Salvar o arquivo com um nome personalizado 

    Para salvar o nome do arquivo com um nome personalizado, use-o como sinalizador seguido diretamente pelo nome desejado. $ curl -O http://www.google.com/robots.txt googleRobots.txt 

    4. Baixar vários arquivos 

    Agora, se a intenção é baixar vários arquivos, separe-os com um espaço em branco, por exemplo: 

    $ curl url1 url2 url3 

    Se quiser usar o sinalizador -O para todas as URLs, aplique: 

    $ curl url1 url2 url3 -O -O -O 

    Essa mesma solução deve ser usada para qualquer sinalizador. 

    Isso ocorre porque a primeira ocorrência de determinado sinalizador é para o primeiro URL, enquanto o segundo sinalizador é para o segundo URL e assim por diante. 

    5. Baixar vários arquivos 

    O cURL tem a capacidade embutida de baixar uma variedade de arquivos do servidor. Isso está ilustrado a partir do exemplo a seguir. 

    $ curl http://www.google.com/logo/logo[1-9].png 

    O comando acima baixa arquivos de logo1.png, logo2.png, logo3.png e até logo9.png. 

    6. Baixar um arquivo apenas se for o mais recente 

    Para baixar um arquivo somente se o horário de modificação do arquivo for mais recente do que o horário especificado, use conforme o exemplo: 

    $ curl url -z “DD MMM AA MM:HH:SS” 

    7. Enviar dados com POST e PUT 

    Caso tenha interesse em enviar dados com POST e PUT, basta usar os comandos que estão na sequência: 

    8. Autenticação e cabeçalhos HTTP 

    Por fim, o cURL também oferece a opção de autenticação e cabeçalhos HTTP. Para recorrer a eles, siga os exemplos que estão na sequência. 

    Exemplos de uso do cURL   

    Finalizando este nosso post sobre o uso do cURL, confira a seguir alguns exemplos de como você pode usar o cURL em seus projetos: 

    1. Verificar conectividade: 
      curl -I https://www.google.com 
      O parâmetro -I retorna apenas os cabeçalhos HTTP da resposta. 
    1. Testar APIs: 
      curl -X GET https://api.example.com/endpoint 
    1. Realizar upload de arquivos: 
      curl -F “file=@/caminho/para/arquivo.txt” https://api.example.com/upload 
    1. Resolver “curl comando não encontrado”: certifique-se de que o cURL está instalado e corretamente configurado no PATH do sistema. Consulte a seção de instalação para mais detalhes. 

    Com o cURL, você tem à disposição uma poderosa ferramenta para interagir com servidores, testar APIs e automatizar tarefas no ambiente de desenvolvimento.  

    Vale lembrar que ele é essencial para quem trabalha com VPS Linux, APIs ou quer explorar ao máximo a segurança de conexões usando certificados SSL. Siga as dicas que apresentamos aqui e comece a utilizá-lo o quanto antes em seus projetos! 

    E para ter mais uma oportunidade de negócio, que tal fazer a revenda de hospedagem? Esse produto é ideal para gerar uma renda extra para diferentes públicos, como pessoas empreendedoras, profissionais de design e freelancers, agências, devs e outros profissionais de tecnologia.  

    Entre as vantagens da revenda de hospedagem, estão: gerenciar diferentes sites, contas de e-mail, bancos de dados e backups, tudo isso contando com a potência de uma infraestrutura de um servidor VPS no Brasil, à sua disposição. Saiba mais como a Locaweb pode ajudar você e seus clientes! 

    O autor

    Rodrigo Cardoso (Pokemaobr)

    Conhecido como Poke, é Streamer (Live "Coder") na Twitch, Web Developer e apresentador do talk show "The Velopers". Com bacharelado em Matemática e MBA em SOA, Poke atua como desenvolvedor e organizador de eventos de TI. É evangelista PHPSP e criador do PokePHP, focando em disseminar conteúdos técnicos e humor para a comunidade de desenvolvedores. Nas horas vagas, ele adora se conectar com a comunidade e compartilhar seu conhecimento de maneira divertida e informativa.

    Veja outros conteúdos desse autor