Convertir curl a Node.js

Convierta comandos curl a código Node.js utilizando el módulo integrado http. curl2code se ejecuta completamente en su navegador a través de WebAssembly; sus claves de API y datos permanecen privados. Para JavaScript en el navegador, consulte nuestro conversor de curl a JavaScript. Si prefiere Python, pruebe curl a Python. A continuación encontrará ejemplos listos para usar.

Cómo copiar curl desde su navegador

  1. 1

    Abrir DevTools

    Presione F12 o Ctrl+Shift+I para abrir las herramientas de desarrollo de su navegador.

  2. 2

    Vaya a la pestaña Network

    Haga clic en la pestaña Network y realice la acción que activa la solicitud HTTP.

  3. 3

    Copiar como cURL

    Haga clic derecho en la solicitud → CopyCopy as cURL. Luego péguelo arriba.

Preguntas frecuentes

¿Qué es el módulo http de Node.js?

Los módulos http y https son módulos integrados de Node.js para realizar solicitudes HTTP sin dependencias. Proporcionan un control de bajo nivel sobre los flujos de solicitud/respuesta. Para alternativas de nivel superior, curl2code también admite axios, node-fetch, got, ky y superagent.

http vs axios vs node-fetch vs got — ¿cuál debería usar?

http no tiene dependencias pero es verboso. axios ofrece una API limpia con interceptores y análisis automático de JSON. node-fetch imita la Fetch API del navegador. got es rico en funciones con reintentos, paginación y flujos (streams). Elige según las necesidades del proyecto. Para JavaScript de navegador, consulta nuestro conversor de curl a JavaScript.

¿Cómo manejar la autenticación en Node.js?

Establece el encabezado Authorization en el objeto de opciones. Para la autenticación Basic, usa Buffer.from(user + ':' + pass).toString('base64'). Con axios, usa la opción de configuración auth integrada. curl2code convierte las etiquetas -u y de token Bearer para todas las bibliotecas de Node.js compatibles.

¿Cómo enviar datos de formulario multipart en Node.js?

Con el módulo http integrado, construye el cuerpo multipart manualmente o usa el paquete form-data. Con axios, pasa una instancia de FormData como cuerpo. Node.js 18+ tiene una clase FormData integrada. curl2code maneja las etiquetas -F para cada variante de biblioteca.

¿Cómo manejar errores HTTP en Node.js?

Con http, escucha el evento 'error' en la solicitud y comprueba response.statusCode. Con axios, se lanzan errores para códigos de estado que no sean 2xx y se pueden capturar en try/catch. Con got, usa el mismo patrón además de la lógica de reintento integrada en caso de fallo.

¿Cómo manejar respuestas de streaming en Node.js?

El módulo http devuelve un flujo legible por defecto; conéctalo con response.pipe(fs.createWriteStream('file')). Con got, usa got.stream(url). Con axios, establece responseType: 'stream'. El streaming es ideal para archivos grandes y evita cargar respuestas completas en la memoria.

¿Cómo establecer tiempos de espera en las solicitudes HTTP de Node.js?

Con http, pasa timeout en las opciones y escucha el evento 'timeout', luego llama a req.destroy(). Axios acepta timeout en milisegundos. Got admite tanto timeout.request como reintentos automáticos integrados con retroceso (backoff) configurable.

¿Cómo usar un proxy con Node.js?

El módulo http integrado requiere tunelización de proxy manual. Usa los paquetes https-proxy-agent o http-proxy-agent. Axios admite proxies a través de la configuración proxy. Got usa la opción agent con agentes de proxy. curl2code convierte las etiquetas -x y --proxy de forma adecuada.

¿Cómo enviar una solicitud POST con un cuerpo JSON en Node.js?

Convierte un comando curl POST como curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL a Node.js usando curl2code. El código generado utiliza axios.post(url, { key: 'value' }). curl2code detecta automáticamente los flags -d/--data con contenido JSON y establece el encabezado Content-Type adecuado en el código de axios.

¿Cómo añadir autorización con token Bearer en Node.js?

Pasa curl -H "Authorization: Bearer YOUR_TOKEN" URL a curl2code y este generará código de axios con el encabezado de autorización: headers: { Authorization: 'Bearer YOUR_TOKEN' }. curl2code detecta tokens Bearer tanto en los flags -H "Authorization: Bearer ..." como en --oauth2-bearer. Para Basic auth, utiliza -u user:pass.

¿Cómo configurar el encabezado Content-Type en Node.js?

curl2code convierte curl -H "Content-Type: application/json" URL a código de axios con el encabezado correcto: headers: { 'Content-Type': 'application/json' }. Para los datos de -d, curl utiliza por defecto application/x-www-form-urlencoded; para subidas de formularios con -F, utiliza multipart/form-data. curl2code mapea cada uno a la API de axios correcta.

Enlaces útiles

Guías de curl

Convertir curl a otros lenguajes