Converter curl para Node.js

Converta comandos curl para código Node.js utilizando o módulo incorporado http. O curl2code é executado inteiramente no seu navegador através de WebAssembly — as suas chaves de API e dados permanecem privados. Para JavaScript no lado do navegador, veja o nosso conversor de curl para JavaScript. Se preferir Python, experimente curl para Python. Abaixo encontrará exemplos prontos a usar.

Como copiar o curl do seu navegador

  1. 1

    Abrir as DevTools

    Prima F12 ou Ctrl+Shift+I para abrir as ferramentas de programador do seu navegador.

  2. 2

    Ir para o separador Network

    Clique no separador Network e realize a ação que despoleta o pedido HTTP.

  3. 3

    Copiar como cURL

    Clique com o botão direito no pedido → CopyCopy as cURL. Depois cole-o acima.

Perguntas Frequentes

O que é o módulo http do Node.js?

Os módulos http e https são módulos integrados do Node.js para fazer pedidos HTTP sem quaisquer dependências. Fornecem controlo de baixo nível sobre streams de pedido/resposta. Para alternativas de nível superior, o curl2code também suporta axios, node-fetch, got, ky e superagent.

http vs axios vs node-fetch vs got — qual devo usar?

O http não tem dependências, mas é verboso. O axios oferece uma API limpa com intercetores e análise automática de JSON. O node-fetch espelha a Fetch API do navegador. O got é rico em funcionalidades com tentativas, paginação e streams. Escolha com base nas necessidades do projeto. Para JavaScript no navegador, consulte o nosso conversor de curl para JavaScript.

Como gerir a autenticação no Node.js?

Defina o cabeçalho Authorization no objeto de opções. Para autenticação Basic, use Buffer.from(user + ':' + pass).toString('base64'). Com o axios, use a opção de configuração auth integrada. O curl2code converte as flags -u e de token Bearer para todas as bibliotecas Node.js suportadas.

Como enviar dados de formulário multipart no Node.js?

Com o módulo http integrado, construa o corpo multipart manualmente ou use o pacote form-data. Com o axios, passe uma instância de FormData como o corpo. O Node.js 18+ tem uma classe FormData integrada. O curl2code gere as flags -F para cada variante de biblioteca.

Como gerir erros HTTP no Node.js?

Com o http, oiça o evento 'error' no pedido e verifique o response.statusCode. Com o axios, são lançados erros para códigos de estado não-2xx, que podem ser capturados em try/catch. Com o got, use o mesmo padrão mais a lógica de tentativas integrada em caso de falha.

Como gerir respostas de streaming no Node.js?

O módulo http devolve uma stream legível por predefinição — encaminhe-a com response.pipe(fs.createWriteStream('file')). Com o got, use got.stream(url). Com o axios, defina responseType: 'stream'. O streaming é ideal para ficheiros grandes e evita carregar respostas inteiras na memória.

Como definir timeouts em pedidos HTTP no Node.js?

Com o http, passe timeout nas opções e oiça o evento 'timeout', depois chame req.destroy(). O axios aceita timeout em milissegundos. O got suporta tanto timeout.request como tentativas automáticas integradas com backoff configurável.

Como usar um proxy com o Node.js?

O módulo http integrado requer tunelamento de proxy manual. Use os pacotes https-proxy-agent ou http-proxy-agent. O axios suporta proxies através da configuração proxy. O got usa a opção agent com agentes de proxy. O curl2code converte as flags -x e --proxy adequadamente.

Como enviar um pedido POST com um corpo JSON em Node.js?

Converta um comando curl POST como curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL para Node.js usando o curl2code. O código gerado utiliza axios.post(url, { key: 'value' }). O curl2code deteta automaticamente as flags -d/--data com conteúdo JSON e define o cabeçalho Content-Type apropriado no código axios.

Como adicionar autorização com token Bearer em Node.js?

Passe curl -H "Authorization: Bearer YOUR_TOKEN" URL para o curl2code e este gera código axios com o cabeçalho de autenticação: headers: { Authorization: 'Bearer YOUR_TOKEN' }. O curl2code deteta tokens Bearer tanto de flags -H "Authorization: Bearer ..." como de --oauth2-bearer. Para Basic auth, utilize -u user:pass.

Como definir o cabeçalho Content-Type em Node.js?

O curl2code converte curl -H "Content-Type: application/json" URL para código axios com o cabeçalho correto: headers: { 'Content-Type': 'application/json' }. Para dados -d, o curl assume por defeito application/x-www-form-urlencoded; para envios de formulários -F, utiliza multipart/form-data. O curl2code mapeia cada um para a API axios correta.

Links Úteis

Guias do curl

Converter curl para Outras Linguagens