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.8.0[1]Edit this on Wikidata (22 maio 2024)
Licença Free Software: MIT/X derivate license

O cURL (pronuncia-se [kɜːrl])[2] é um projeto de software de computador que fornece uma biblioteca e uma ferramenta de linha de comando para transferir dados usando vários protocolos .O projeto cURL produz dois produtos, libcurl e cURL. Lançado pela primeira vez em 1997, o nome cURL vem do inglês "Client URL", que significa "URL do cliente".[3] O autor original e principal desenvolvedor é o desenvolvedor sueco Daniel Stenberg .[4]

libcurl

libcurl é uma biblioteca de transferência de URL do lado do cliente,[5] 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.

A biblioteca libcurl é portável. Ela constrói e funciona de forma idêntica em muitas plataformas, incluindo AIX, AmigaOS, Android , BeOS, BlackBerry Tablet OS e BlackBerry 10,[6] 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 é gratuita, "thread-safe" e compatível com IPv6. Vinculações estão disponíveis para mais de 40 linguagens, incluindo C/C++, Java, PHP e Python.

A biblioteca libcurl pode suportar axTLS,[7] GnuTLS, mbed TLS, NSS, QSOSSL no IBM i, SChannel no Windows, Secure Transport no macOS e iOS, SSL / TLS pelo OpenSSL, e wolfSSL.

cURL

cURL é uma ferramenta de linha de comando utilizada para obter ou enviar dados, incluindo arquivos, usando a sintaxe URL.

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%.[8]

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.

Ver também

Referências

  1. «Release 8.8.0». 22 maio 2024. Consultado em 22 maio 2024 
  2. cURL - Perguntas Frequentes
  3. «Origin of the name». curl.haxx.se/ (em inglês) 
  4. «curl, 17 years old today». daniel.haxx.se 
  5. «Conversing through the Internet with cURL and libcurl - Using libcurl with C and Python». IBM Developerworks 
  6. Componentes de código aberto para o SDK nativo do BlackBerry Tablet OS
  7. axTLS
  8. cURL - Documentação do protocolo - Verificação de certificado SSL

Ligações externas

  • Sítio oficial
  • Comparação de cURL vs outras ferramentas de download de código aberto
  • Comparação de cURL vs wget


  • v
  • d
  • e
Arquivos
  • cat
  • cd
    • popd
    • pushd
  • chattr
  • chmod
  • chown
  • chflags
  • chgrp
  • cksum
  • cp
  • cmp
  • curl
  • dd
  • du
  • df
  • file
  • fsck
  • less
  • ln
  • ls
  • lsof
  • mkdir
  • more
  • mv
  • pax
  • pwd
  • rm
  • rmdir
  • split
  • size
  • tee
  • touch
  • tree
  • type
  • umask
Processos e tarefas
  • anacron
  • at
  • bg
  • chroot
  • crontab
  • jobs
  • kill
  • killall
  • nice
  • fg
  • pgrep
  • pidof
  • pkill
  • ps
  • pstree
  • time
  • top
  • wait
Ambiente e usuários
  • clear
  • env
  • exit
  • finger
  • history
  • id
  • locale
  • logname
  • mesg
  • passwd
  • su
  • sudo
  • talk
  • tput
  • ulimit
  • uname
  • umask
  • uptime
  • w
  • wall
  • who
  • whoami
  • write
Processamento de texto
  • awk
  • banner
  • basename
  • comm
  • csplit
  • cut
  • diff
  • dirname
  • disown
  • ed
  • ex
  • fmt
  • fold
  • head
  • iconv
  • join
  • less
  • more
  • nl
  • paste
  • sed
  • sort
  • spell
  • strings
  • tail
  • tr
  • uniq
  • vi
  • wc
  • xargs
Shell
  • alias
  • bind
  • break
  • compgen
  • complete
  • continue
  • echo
  • expr
  • history
  • printf
  • read
  • sh
  • shopt
  • source
  • test
  • true
  • false
  • unset
  • wait
  • yes
Redes e comunicação
  • dig
  • ifconfig
  • inetd
  • netstat
  • nslookup
  • ping
  • rlogin
  • route
  • ssh
  • traceroute
Busca
  • find
  • grep
  • strings
  • locate
  • whatis
  • whereis
Documentação
  • apropos
  • help
  • man
Miscelâneas
  • bc
  • dc
  • cal
  • date
  • lp
  • lpr
  • od
Comandos geralmente implementados no interpretador.
Comando geralmente implementados, tanto como executáveis, como quanto no interpretador.
Ícone de esboço Este artigo sobre Unix é um esboço. Você pode ajudar a Wikipédia expandindo-o.
  • v
  • d
  • e