

Connect es una familia de bibliotecas para construir API seguras de tipo con diferentes idiomas y plataformas. @Connectrpc/Connect los lleva a TypeScript, el navegador web y a Node.js.
Con Connect, primero define su esquema:
service ElizaService {
rpc Say(SayRequest) returns (SayResponse) {}
}
Y con la magia de la generación de código, este esquema produce servidores y clientes:
const answer = await eliza . say ( { sentence : "I feel happy." } ) ;
console . log ( answer ) ;
// {sentence: 'When you feel happy, what do you do?'} A diferencia de REST, la llamada de procedimiento remoto es de tipo seguro, pero son HTTP regulares debajo del capó. Puede ver todas las solicitudes en el Inspector de Red, y puede curl si lo desea:
curl
--header ' Content-Type: application/json '
--data ' {"sentence": "I feel happy."} '
https://demo.connectrpc.com/connectrpc.eliza.v1.ElizaService/SayConnect usa ProtoBuf-ES, la única biblioteca JavaScript de ProtoBuf totalmente compatible.
Connect implementa RPC tres protocolos: los protocolos GRPC y GRPC-WEB ampliamente disponibles, y el propio protocolo de Connect, optimizado para la web. Esto le brinda una interoperabilidad incomparable en muchas plataformas e idiomas, con tipo de seguridad de extremo a extremo.
Siga nuestro tutorial de 10 minutos donde usamos VITE y reaccionamos para crear una interfaz web para Eliza.
React , esbelto , Vue , Next.js y Angular son compatibles (ver ejemplos), y tenemos un paquete de expansión para la consulta de TanStack. Apoyamos todos los navegadores web modernos que implementan la API Fetch ampliamente disponible y la API de codificación.
Siga nuestro tutorial de 10 minutos para girar un servicio en Node.js, y llámelo desde la web, y desde un cliente GRPC en su terminal.
Puede servir a sus RPC de Connect con Vanilla Node.js, o usar nuestros complementos de servidor para Fastify , Next.js y Express . Admitimos Node.js V18.14.1 y más tarde con los módulos http y http2 construidos.
Si está migrando de V1 a V2, consulte nuestra Guía de migración;
¿Le gustaría usar Connect en otras plataformas como Bun, Deno, el tiempo de ejecución de Edge de Vercel o los trabajadores de Cloudflare? Nos encantaría aprender sobre sus casos de uso y lo que le gustaría hacer con Connect. ¡Puede comunicarse con nosotros a través del BUF Slack o presentando un problema de GitHub y estaríamos más que felices de chatear!
Las bibliotecas y el código generado son compatibles con ES2017 y TypeScript 4.9.5.
Ofrecido bajo la licencia Apache 2.