WikiMini

CURL


cURL
Curl logo
CURL
Captura de tela
CURL
Desenvolvedor Contributors to the cURL project
Plataforma IA-32, x64
Lançamento 1997
Versão estável 8.15.0[1]Edit this on Wikidata (16 julho 2025)
Licença Free Software: MIT/X derivate license

O cURL (pronuncia-se [kɜːrl];[2] "client-URL"[3]) é uma interface de linha de comando (CLI) de código aberto para transferência de arquivos entre cliente e servidor usando vários protocolos (função de upload/download),[4] para fazer testes em API e, para o desenvolvedor e o administrador de sistemas fazer uma interação eficiente e simples. É formado por uma biblioteca/subprogramas (libcurl) e uma ferramenta de linha de comando (curl). Lançado em 1997 e desenvolvido pelo sueco Daniel Stenberg.[5]

Lançado em 1997, o nome cURL vem do inglês "client-URL", que m português significa "URL do cliente".[3] O autor original e principal desenvolvedor é sueco Daniel Stenberg.[5]

A libcurl é uma biblioteca grátis, multi-plataforma e com API, para transferência de URL do lado do cliente,[6][7] suportando cookies, DICT, FTP, FTPS, Gopher, HTTP (com suporte a HTTP/2 ), HTTP POST, HTTP PUT, proxy HTTP, HTTPS, IMAP, Kerberos, LDAP, POP3, RTSP, SCP e SMTP. A biblioteca suporta o esquema URI de arquivos, SFTP, Telnet, TFTP, retomada de transferência de arquivos, upload de FTP, upload baseado em formulário HTTP, certificados HTTPS, LDAPS, proxies e autenticação de usuário. Suporta: axTLS,[8] GnuTLS, mbed TLS, NSS, QSOSSL no IBM i, SChannel no Windows, Secure Transport no macOS e iOS, SSL / TLS pelo OpenSSL, e wolfSSL.

A biblioteca libcurl é portável e, funciona de forma idêntica em muitas plataformas, incluindo AIX, AmigaOS, Android , BeOS, BlackBerry Tablet OS e BlackBerry 10,[9] OpenVMS, Darwin, DOS, FreeBSD, HP-UX, HURD, iOS, IRIX, Linux, MacOS , NetBSD, NetWare, OpenBSD, OS / 2, QNX Neutrino, SO RISC, Solaris, Symbian, Tru64, Ultrix, UnixWare e Windows.

A biblioteca libcurl e thread-safe (execução segura em várias threads), e compatível com IPv6. Vinculações estão disponíveis para mais de 40 linguagens, incluindo: C/C++, Java, PHP e Python.

cURL é uma ferramenta de linha de comando utilizada para obter ou enviar dados, incluindo arquivos, usando a sintaxe URL. Também cria um script que emita automaticamente várias solicitações de API e, armazena as respostas em arquivo.

Por utilizar a biblioteca libcurl, cURL suporta vários protocolos de rede comuns, incluindo HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, DAP, DICT, TELNET, ARQUIVO, IMAP, POP3, SMTP e RTSP (os quatro últimos apenas em versões mais recentes que 7.20.0 ou 9 de fevereiro de 2010).

O cURL suporta HTTPS e executa a verificação de certificado SSL por padrão quando um protocolo seguro é especificado, como HTTPS. Quando o cURL se conecta a um servidor remoto via HTTPS, ele obtém o certificado do servidor remoto e verifica em seu armazenamento de certificados CA a validade do mesmo, de modo a garantir que o servidor remoto seja aquele que afirma ser. Alguns pacotes cURL são embutidos com um arquivo que armazena os certificados CA. Existem várias opções para especificar um certificado de CA, como --cacert e --capath . A opção --cacert pode ser usada para especificar o local do arquivo onde o certificado CA está armazenado. Na plataforma Windows, se um arquivo de certificado de CA não for especificado, o cURL procurará por um arquivo com nome “curl-ca-bundle.crt” na seguinte ordem:

  1. Diretório onde o programa cURL está localizado.
  2. Diretório de trabalho atual.
  3. Diretório do sistema do Windows.
  4. Diretório do Windows.
  5. Diretórios especificados nas variáveis de ambiente %PATH%.[10]

O cURL retornará uma mensagem de erro se o servidor remoto estiver usando um certificado autoassinado ou se o certificado do servidor remoto não estiver assinado por uma CA listada no arquivo de certificado da CA. A opção -k ou --insecure pode ser usada para pular a verificação de certificados. Como alternativa, se o servidor remoto for confiável, o certificado CA do servidor remoto poderá ser adicionado ao arquivo de armazenamento dos certificados CA.

  1. "curl 8.15.0"; nome do autor: Daniel Stenberg; língua da obra ou do nome: inglês; data de publicação: 16 julho 2025; data de acesso: 16 julho 2025.
  2. «curl - Frequently Asked Questions». curl.se. Consultado em 20 de agosto de 2025 
  3. a b «Origin of the name». curl.haxx.se/ (em inglês) 
  4. «Curl declara guerra aos relatórios de bugs gerados por IA». 12 de maio de 2025. Consultado em 20 de agosto de 2025 
  5. a b «curl, 17 years old today». Daniel Haxx 
  6. «Conversing through the Internet with cURL and libcurl - Using libcurl with C and Python». IBM Developerworks 
  7. «curl vs Wget». daniel.haxx.se. Consultado em 20 de agosto de 2025 
  8. «axTLS Embedded SSL». Axtls Sourceforge. Consultado em 20 de agosto de 2025 
  9. «Open Source Components for the Native SDK for BlackBerry® Tablet OS». Blackberry Github. Consultado em 20 de agosto de 2025. Cópia arquivada em 27 de janeiro de 2013 
  10. «curl». SSL CA Certificates (em inglês). Consultado em 20 de agosto de 2025 

Ligações externas

[editar | editar código fonte]


Ícone de esboço Este artigo sobre Unix é um esboço. Você pode ajudar a Wikipédia expandindo-o.