

Connect est une famille de bibliothèques pour construire des API de type type avec différentes langues et plates-formes. @ Connectrpc / Connect les amène à TypeScript, au navigateur Web et à Node.js.
Avec Connect, vous définissez d'abord votre schéma:
service ElizaService {
rpc Say(SayRequest) returns (SayResponse) {}
}
Et avec la magie de la génération de code, ce schéma produit des serveurs et des clients:
const answer = await eliza . say ( { sentence : "I feel happy." } ) ;
console . log ( answer ) ;
// {sentence: 'When you feel happy, what do you do?'} Contrairement au repos, l'appel de procédure distante est de type type, mais ils sont réguliers HTTP sous le capot. Vous pouvez voir toutes les demandes de l'inspecteur de réseau, et vous pouvez les curl si vous le souhaitez:
curl
--header ' Content-Type: application/json '
--data ' {"sentence": "I feel happy."} '
https://demo.connectrpc.com/connectrpc.eliza.v1.ElizaService/SayConnect utilise Protobuf-ES, la seule bibliothèque JavaScript Protobuf entièrement conforme.
Connect implémente RPC trois protocoles: les protocoles GRPC et GRPC-Web largement disponibles, et le propre protocole de Connect, optimisé pour le Web. Cela vous donne une interopérabilité inégalée sur de nombreuses plates-formes et langues, avec de bout en bout de type.
Suivez notre tutoriel de 10 minutes où nous utilisons VITE et réagissez pour créer une interface Web pour Eliza.
React , Svelte , Vue , Next.js et Angular sont pris en charge (voir des exemples), et nous avons un pack d'extension pour la requête Tanstack. Nous prenons en charge tous les navigateurs Web modernes qui implémentent l'API Fetch largement disponible et l'API Encoding.
Suivez notre tutoriel de 10 minutes pour faire tourner un service dans Node.js, et appelez-le à partir du Web, et d'un client GRPC de votre terminal.
Vous pouvez servir vos RPC Connect avec Vanilla Node.js, ou utiliser nos plugins de serveur pour Fintify , Next.js et Express . Nous prenons en charge Node.js v18.14.1 et ultérieurement avec les modules http et http2 intégrés.
Si vous migrez de la V1 à V2, consultez notre guide de migration;
Souhaitez-vous utiliser Connect sur d'autres plates-formes comme BUN, DENO, Vercel's Edge Runtime ou CloudFlare? Nous aimerions en savoir plus sur vos cas d'utilisation et ce que vous aimeriez faire avec Connect. Vous pouvez nous joindre soit par le Slack BUF, soit en déposant un problème GitHub et nous serions plus qu'heureux de discuter!
Les bibliothèques et le code généré sont compatibles avec ES2017 et TypeScript 4.9.5.
Offert sous la licence Apache 2.