Repolode
dromara

dromara/jquick-curl

Una biblioteca Java que ejecuta comandos curl sin modificar como llamadas a métodos Java normales, para que puedas pegar comandos de Postman o DevTools del navegador sin escribir código de cliente HTTP.

Alternativa open source a:Postman

Estrellas
1,093
Forks
71
Issues abiertos
0
Último commit
hace 5 días

¿Qué es?

jquick-curl permite a los desarrolladores Java definir una solicitud HTTP como un comando curl y ejecutarlo como si fuera un método normal. Puedes declarar el comando con la anotación @JCurlCommand en un método de interfaz o centralizarlo en un archivo XML; después, creas un proxy dinámico con JCurlInvoker.createProxy. Los comandos se analizan con ANTLR y se envían mediante una capa de transporte con pooling basada en OkHttp.

La biblioteca admite opciones habituales de curl como -X, -H, -d, -F, -o, -b, -c, -u, -L y -x, por lo que normalmente puedes pegar directamente un comando copiado de Postman, Apifox o DevTools del navegador. También admite los marcadores de posición ${name} y #{name}, que se resuelven en tiempo de ejecución, encabezados condicionales en XML mediante expresiones <if> y un archivo de cookies en formato Netscape para conservar sesiones.

Los tiempos de espera globales, el tamaño del pool de conexiones, los reintentos, las redirecciones y los interceptores se configuran una sola vez mediante el singleton JQuickCurlConfig. El proyecto forma parte del ecosistema JQuick y está publicado en Maven Central; requiere JDK 8 o posterior.

Funciones clave

  • 01Definir solicitudes HTTP como comandos curl con @JCurlCommand o XML.
  • 02Crear clientes funcionales a partir de interfaces mediante JCurlInvoker.createProxy.
  • 03Admite cargas multipart con -F y descargas de archivos con -o.
  • 04Gestión de cookies con -b, -c y persistencia de Set-Cookie.
  • 05Configurar tiempos de espera globales, el pool de conexiones, los reintentos y las redirecciones mediante JQuickCurlConfig.
  • 06Admite proxies HTTP y SOCKS5, y -k para omitir la verificación de certificados.

Casos de uso

  • Convertir solicitudes de API copiadas de Postman o DevTools del navegador en llamadas a servicios Java.
  • Organizar en archivos XML, separados del código Java, definiciones de numerosas API de terceros.
  • Llamar a endpoints que requieren sesiones iniciadas guardando las cookies en un archivo.
  • Escribir pruebas de integración o scripts por lotes que ejecuten un conjunto de comandos curl.

Temas

Preguntas frecuentes

¿Qué es jquick-curl?
Una biblioteca Java que ejecuta comandos curl sin modificar como llamadas a métodos Java normales, para que puedas pegar comandos de Postman o DevTools del navegador sin escribir código de cliente HTTP. jquick-curl permite a los desarrolladores Java definir una solicitud HTTP como un comando curl y ejecutarlo como si fuera un método normal. Puedes declarar el comando con la anotación @JCurlCommand en un método de interfaz o centralizarlo en un archivo XML; después, creas un proxy dinámico con JCurlInvoker.createProxy. Los comandos se analizan con ANTLR y se envían mediante una capa de transporte con pooling basada en OkHttp.
¿jquick-curl es gratuito? ¿Qué licencia tiene?
jquick-curl es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿jquick-curl sigue mantenido?
Mantenimiento activo. El último commit de jquick-curl fue el 15 oct 2026.
¿Para qué puedo usar jquick-curl?
Convertir solicitudes de API copiadas de Postman o DevTools del navegador en llamadas a servicios Java. Organizar en archivos XML, separados del código Java, definiciones de numerosas API de terceros. Llamar a endpoints que requieren sesiones iniciadas guardando las cookies en un archivo. Escribir pruebas de integración o scripts por lotes que ejecuten un conjunto de comandos curl.
¿Dónde consigo jquick-curl?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/dromara/jquick-curl

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados