Skip to main content

Curl

  • Curl

O cURL (Client for URLs) é uma ferramenta de linha de comando usada para transferir dados para ou de um servidor usando diversos protocolos, incluindo HTTP, HTTPS, FTP, entre outros. Ele é amplamente utilizado para fazer requisições HTTP, testar APIs e realizar transferências de arquivos. Abaixo está um resumo de como usar o cURL para realizar diferentes operações, incluindo cabeçalhos, parâmetros e outras opções comuns.

Instalação

Para instalar o cURL, você pode usar um dos seguintes comandos, dependendo do seu sistema operacional:

  • macOS: brew install curl
  • Windows: Baixe e instale a partir do site oficial
  • Linux: sudo apt-get install curl (Debian/Ubuntu) ou sudo yum install curl (Red Hat/CentOS)

Comandos Básicos

1. Requisição GET

A operação GET é usada para recuperar dados de um servidor.

curl https://api.exemplo.com/recurso

2. Requisição POST

A operação POST é usada para enviar dados ao servidor.

curl -X POST https://api.exemplo.com/recurso -d "param1=valor1&param2=valor2"

3. Enviando Dados JSON em uma Requisição POST

curl -X POST https://api.exemplo.com/recurso -H "Content-Type: application/json" -d '{"chave1":"valor1", "chave2":"valor2"}'

4. Incluindo Cabeçalhos em uma Requisição

curl -H "Authorization: Bearer token_aqui" -H "Content-Type: application/json" https://api.exemplo.com/recurso

5. Requisição PUT

A operação PUT é usada para atualizar dados em um servidor.

curl -X PUT https://api.exemplo.com/recurso/1 -d "param1=valor1&param2=valor2"

6. Requisição DELETE

A operação DELETE é usada para remover dados de um servidor.

curl -X DELETE https://api.exemplo.com/recurso/1

7. Autenticação Básica

curl -u usuario:senha https://api.exemplo.com/recurso

8. Download de Arquivo

curl -O https://exemplo.com/arquivo.zip

9. Upload de Arquivo

curl -X POST https://api.exemplo.com/upload -F "file=@/caminho/para/arquivo.zip"

Parâmetros Comuns

  • -X: Especifica o método HTTP a ser usado (GET, POST, PUT, DELETE).
  • -d: Envia dados na requisição.
  • -H: Adiciona cabeçalhos à requisição.
  • -u: Especifica o usuário e senha para autenticação básica.
  • -O: Baixa um arquivo com o nome original.
  • -F: Envia um formulário (usado para upload de arquivos).
  • -I: Recupera apenas os cabeçalhos da resposta.
  • -v: Modo verbose, exibe detalhes da requisição e resposta.

Exemplos Avançados

Requisição GET com Parâmetros de URL

curl "https://api.exemplo.com/recurso?param1=valor1&param2=valor2"

Requisição POST com Dados e Cabeçalhos

curl -X POST https://api.exemplo.com/recurso -H "Content-Type: application/json" -H "Authorization: Bearer token_aqui" -d '{"chave1":"valor1"}'
# Salva o cookie
curl -c cookies.txt -X POST https://api.exemplo.com/login -d "usuario=meuusuario&senha=minhasenha"

# Usa o cookie salvo
curl -b cookies.txt https://api.exemplo.com/recurso_protegido

Este guia fornece uma visão geral abrangente do cURL e como ele pode ser usado para realizar várias operações HTTP. Para mais detalhes, você pode consultar a documentação oficial do cURL.