

Connect ist eine Familie von Bibliotheken zum Aufbau von APIs von Typen mit unterschiedlichen Sprachen und Plattformen. @screctrpc/connect bringt sie an TypeScript, den Webbrowser und an node.js.
Mit Connect definieren Sie zuerst Ihr Schema:
service ElizaService {
rpc Say(SayRequest) returns (SayResponse) {}
}
Und mit der Magie der Codegenerierung produziert dieses Schema Server und Clients:
const answer = await eliza . say ( { sentence : "I feel happy." } ) ;
console . log ( answer ) ;
// {sentence: 'When you feel happy, what do you do?'} Im Gegensatz zur Ruhe sind der Remote-Verfahrensaufruf vom Typ Typ, aber sie befinden sich regelmäßig unter der Motorhaube. Sie können alle Anfragen im Netzwerkinspektor sehen und sie curl , wenn Sie möchten:
curl
--header ' Content-Type: application/json '
--data ' {"sentence": "I feel happy."} '
https://demo.connectrpc.com/connectrpc.eliza.v1.ElizaService/SayConnect verwendet Protobuf-ES, die einzige vollständig konforme Protobuf JavaScript-Bibliothek.
Connect implementiert RPC Drei Protokolle: die weit verbreiteten GRPC- und GRPC-Web-Protokolle sowie das für das Web optimierte Protokoll von Connect. Auf diese Weise erhalten Sie beispiellose Interoperabilität auf vielen Plattformen und Sprachen mit End-to-End-Typ-Safety.
Folgen Sie unserem 10 -minütigen Tutorial, in dem wir Vite verwenden und reagieren, um eine Webschnittstelle für Eliza zu erstellen.
React , Sufle , Vue , Next.js und Angular werden unterstützt (siehe Beispiele), und wir haben ein Expansionspaket für Tanstack -Abfragen. Wir unterstützen alle modernen Webbrowser, die die weit verbreitete Fetch -API und die Codierungs -API implementieren.
Folgen Sie unserem 10 -minütigen Tutorial, um einen Dienst in Node.js zu verbessern, und rufen Sie es aus dem Web und von einem GRPC -Client in Ihrem Terminal an.
Sie können Ihre Connect -RPCs mit Vanilla node.js bedienen oder unsere Server -Plugins für Fastify , Next.js und Express verwenden. Wir unterstützen Node.js v18.14.1 und später mit den integrierten http und http2 -Modulen.
Wenn Sie von V1 nach V2 migrieren, lesen Sie unseren Migrationsleitfaden.
Möchten Sie Connect auf anderen Plattformen wie Bun, Deno, Vercels Edge Runtime oder Cloudflare -Mitarbeitern verwenden? Wir würden gerne etwas über Ihre Anwendungsfälle lernen und was Sie mit Connect tun möchten. Sie können uns entweder über die BUF Slack oder durch die Einreichung eines Github -Problems erreichen, und wir würden uns gerne unterhalten!
Die Bibliotheken und der generierte Code sind mit ES2017 und TypeScript 4.9.5 kompatibel.
Angeboten unter der Apache 2 -Lizenz.