BloomRPC resolvía una necesidad concreta para gRPC: cargar un archivo .proto, seleccionar un método, editar un cuerpo JSON y enviar la llamada sin escribir un cliente. Sin embargo, el repositorio fue archivado el 4 de enero de 2023, su README indica que el uso ya no es recomendable y no recibirá correcciones ni lanzamientos. Si todavía lo usas, es momento de migrar a una herramienta mantenida.
Apidog es una alternativa práctica para equipos que necesitan probar gRPC junto con REST, WebSocket y GraphQL. Permite importar archivos .proto, conectarse mediante reflexión de servidor, ejecutar los cuatro tipos de llamadas gRPC y guardar configuraciones de depuración en un proyecto compartido. Si solo necesitas una llamada puntual desde la terminal, grpcurl puede ser una opción más ligera; también se cubre más adelante.
Qué fue BloomRPC y por qué debes reemplazarlo
BloomRPC se lanzó en 2018 como una aplicación Electron para ejecutar llamadas gRPC sin implementar un cliente. El flujo era directo:
- Importar uno o varios archivos
.proto. - Elegir un servicio y método RPC.
- Editar el mensaje de solicitud generado como JSON.
- Añadir metadatos.
- Enviar la llamada y revisar la respuesta.
Funcionaba bien para llamadas unarias y algunos flujos básicos de streaming. El problema es que un repositorio archivado no recibe correcciones de errores, actualizaciones de dependencias ni soporte para nuevas capacidades del ecosistema gRPC.
Esto afecta especialmente a una aplicación Electron: las versiones empaquetadas de Chromium y Node.js envejecen, los problemas de importación de protos permanecen sin resolver y los flujos de streaming con errores no mejoran.
La interfaz de BloomRPC era útil, pero hoy el requisito mínimo para un cliente gRPC es más amplio: importar protos, enviar llamadas, gestionar autenticación, trabajar con streaming y compartir configuraciones reproducibles. Para una referencia sobre estas capacidades, consulta qué define a un buen cliente gRPC.
Alternativa principal: Apidog
Apidog es una plataforma de desarrollo de API que cubre diseño, depuración, pruebas, simulación y documentación. Según la documentación oficial de gRPC, puedes usarlo para reemplazar el flujo de BloomRPC y ampliar el trabajo de tu equipo.
1. Ejecuta los cuatro tipos de llamadas gRPC
Apidog admite:
- Llamadas unarias
- Streaming de servidor
- Streaming de cliente
- Streaming bidireccional
Para una llamada de streaming, trabaja como una sesión activa:
- Abre el método RPC.
- Conéctate al servidor.
- Envía mensajes desde la pestaña de mensajes.
- Revisa la secuencia de mensajes enviados y recibidos en la línea de tiempo.
Esto es especialmente útil si tus servicios dependen de streams de cliente o bidireccionales.
2. Importa la definición de API de tres formas
Puedes cargar tus servicios gRPC desde:
- Un archivo
.protolocal. - Una URL que exponga el archivo
.proto. - La reflexión del servidor gRPC.
Si tus protos dependen de otros archivos, añade el directorio de dependencias durante la importación. Si el servidor tiene reflexión habilitada, puedes explorar servicios y métodos sin buscar manualmente la versión correcta del .proto.
3. Edita mensajes protobuf como JSON
Al igual que BloomRPC, Apidog muestra los mensajes protobuf como JSON editable. Por ejemplo, para este método:
service UserService {
rpc GetUser(GetUserRequest) returns (GetUserResponse);
}
message GetUserRequest {
string id = 1;
}
Puedes enviar una solicitud como:
{
"id": "usr_123"
}
No necesitas construir manualmente cargas binarias protobuf. Si necesitas revisar cómo se realiza esta conversión, consulta la guía de protobuf a JSON.
4. Configura TLS, metadatos y autenticación
Para cada solicitud, configura:
- El destino del servidor.
- El esquema
grpc://ogrpcs://. - Metadatos personalizados.
- Tokens u otros parámetros de autenticación.
Por ejemplo, puedes añadir metadatos equivalentes a:
authorization: Bearer <token>
x-tenant-id: tenant_01
Para patrones de token y mTLS, consulta las buenas prácticas de autenticación gRPC.
5. Guarda y comparte configuraciones
La diferencia más importante frente a una herramienta aislada es que las llamadas guardadas pueden vivir en el mismo proyecto que:
- Endpoints REST.
- APIs GraphQL.
- WebSocket y SSE.
- Escenarios de prueba.
- Documentación publicada.
- Configuraciones compartidas del equipo.
En lugar de volver a importar protos y pegar metadatos en cada máquina, guarda una configuración reutilizable para el equipo.
BloomRPC vs Apidog de un vistazo
| Característica | BloomRPC | Apidog |
|---|---|---|
| Estado | Archivado en enero de 2023; no se recomienda su uso | En desarrollo activo |
| Llamadas unarias | Sí | Sí |
| Streaming de servidor, cliente y bidireccional | Parcial, con problemas conocidos | Compatible con los cuatro modos |
| Importación de proto | Archivos .proto locales |
Archivo local, URL o reflexión del servidor |
| TLS | Básico | Selección de grpc:// o grpcs:// por solicitud |
| Metadatos y autenticación | Edición de metadatos | Metadatos y configuración de autenticación |
| Colaboración | Solo local | Solicitudes guardadas en espacios de trabajo compartidos |
| Otros protocolos | Solo gRPC | REST, WebSocket, SSE, GraphQL y gRPC |
| Pruebas, mocks y documentación | No | En el mismo proyecto |
| Precio | Gratis, pero abandonado | Plan gratuito para hasta 4 usuarios |
Migración de BloomRPC a Apidog paso a paso
BloomRPC no almacenaba un estado portable relevante, por lo que no existe un archivo de migración que exportar. El proceso consiste en reconstruir tus llamadas usando los archivos y datos que ya tienes.
Paso 1: reúne los archivos .proto
Busca los archivos .proto en tu repositorio. Incluye los directorios de dependencias si tus definiciones importan otros protos:
import "google/protobuf/timestamp.proto";
import "common/pagination.proto";
Necesitarás indicar las rutas donde están disponibles esos archivos dependientes.
Paso 2: crea un proyecto e importa los protos
En Apidog:
- Crea o abre un proyecto.
- Añade una API gRPC.
- Importa el archivo
.proto, una URL o usa reflexión de servidor. - Añade las rutas de dependencias si el proto importa otros archivos.
- Selecciona el servicio y el método RPC.
Si tienes un servidor de staging con reflexión habilitada, puedes omitir los archivos .proto y conectarte directamente al servidor.
Paso 3: configura el servidor y TLS
Introduce la dirección del servidor, por ejemplo:
grpc://localhost:50051
O, para una conexión segura:
grpcs://grpc.example.com:443
Selecciona el esquema correcto según la configuración de tu servicio.
Paso 4: reconstruye metadatos y autenticación
Vuelve a añadir los valores que pegabas en BloomRPC:
authorization: Bearer <token>
x-request-id: debug-local-001
Guarda la solicitud para no volver a escribirlos en cada sesión.
Paso 5: prueba una llamada unaria
Usa el JSON generado por el método como punto de partida. Por ejemplo:
{
"email": "dev@example.com",
"include_profile": true
}
Envía la solicitud y valida:
- El código de estado gRPC.
- Los metadatos de respuesta.
- El cuerpo del mensaje.
- La latencia.
- Los errores de serialización o autenticación.
Los códigos gRPC no son códigos HTTP; consulta la referencia de códigos de estado gRPC durante la migración.
Paso 6: valida los métodos de streaming
Si tu servicio usa streaming, prueba cada flujo de manera explícita:
- Streaming de servidor: envía una solicitud y recibe múltiples mensajes.
- Streaming de cliente: abre la sesión, envía varios mensajes y finaliza el stream.
- Streaming bidireccional: envía y recibe mensajes de manera independiente durante la misma sesión.
Para revisar cuándo usar cada patrón, consulta la explicación de streaming gRPC.
Paso 7: guarda la configuración para el equipo
Guarda las solicitudes que funcionen con:
- URL del servidor.
- Método RPC.
- Cuerpo de solicitud.
- Metadatos.
- Configuración TLS.
- Autenticación.
Esto convierte una configuración local y efímera de BloomRPC en una referencia compartida y reutilizable.
Cuándo elegir otra alternativa
Apidog es una opción adecuada si quieres usar gRPC dentro de una plataforma de API más amplia. Si tu necesidad es más específica, estas herramientas también pueden encajar.
-
grpcurl: una alternativa de línea de comandos similar a
curlpara gRPC. Es útil para scripts, automatización, CI y comprobaciones rápidas contra servidores con reflexión habilitada. Consulta la comparación de alternativas a grpcurl. - grpcui: interfaz web temporal construida sobre grpcurl. Útil para inspecciones rápidas de un solo servidor, sin estado guardado por diseño.
- Kreya: cliente de escritorio para gRPC y REST con un flujo de trabajo centrado en protos. Es una opción si buscas un sustituto independiente y directo de BloomRPC. Revisa qué es Kreya y la alternativa a Kreya.
- Postman: incorpora soporte para gRPC desde 2022. Puede ser suficiente si tu equipo ya usa Postman, aunque debes considerar sus costes y modelo de espacio de trabajo. Consulta la alternativa a Postman.
- evans: REPL interactivo para gRPC en la terminal. Es útil para quienes trabajan principalmente en consola, pero no reemplaza una GUI para equipos que prefieren un flujo visual.
La regla práctica es simple:
- Usa CLI para automatización y CI.
- Usa una GUI específica si solo trabajas con gRPC de forma aislada.
- Usa una plataforma de API si necesitas mantener gRPC, REST, pruebas y documentación en un único lugar.
Preguntas frecuentes
¿Todavía se mantiene BloomRPC?
No. El repositorio fue archivado el 4 de enero de 2023 y su README indica que ya no se recomienda usarlo. No hay actualizaciones, correcciones de seguridad ni lanzamientos previstos. Para nuevas configuraciones, elige un cliente gRPC mantenido.
¿Puedo importar una configuración de BloomRPC a Apidog?
No existe un archivo de importación porque BloomRPC no guardaba una configuración portable completa. Debes volver a importar tus archivos .proto o conectarte mediante reflexión de servidor, y después recrear la URL, TLS, metadatos y autenticación.
¿Apidog soporta streaming gRPC?
Sí. Admite llamadas unarias, streaming de servidor, streaming de cliente y streaming bidireccional. Las sesiones de streaming permiten enviar mensajes y revisar una línea de tiempo con el tráfico recibido y enviado. Consulta la guía sobre streaming gRPC para más contexto.
¿Qué uso para llamadas rápidas desde la terminal?
Usa grpcurl. Es apropiado para llamadas ad hoc, scripts de shell y flujos de CI, especialmente si el servidor tiene reflexión habilitada. La guía de alternativas a grpcurl explica cuándo una CLI deja de ser suficiente.
¿Puedo probar APIs gRPC y REST en la misma herramienta?
Sí. En Apidog, gRPC, REST, WebSocket, SSE y GraphQL pueden convivir en un mismo proyecto. Si un backend expone gRPC internamente y REST de cara a clientes externos, puedes guardar y probar ambos contratos desde el mismo espacio de trabajo. Consulta el flujo para probar APIs gRPC.
Retira el cliente archivado
BloomRPC fue útil, pero ya no es una opción mantenida para nuevos proyectos. Migra importando tus archivos .proto o conectándote a un servidor con reflexión habilitada, configura TLS y metadatos, prueba llamadas unarias y de streaming, y guarda las solicitudes para reutilizarlas con el equipo.
Puedes descargar Apidog y empezar con un proyecto gratuito para hasta 4 usuarios. Tus archivos .proto son, en la práctica, el único recurso que necesitas para comenzar la migración.
Top comments (0)