

Connect adalah keluarga perpustakaan untuk membangun API yang aman dengan jenis bahasa dan platform yang berbeda. @Connectrpc/Connect membawanya ke TypeScript, Browser Web, dan ke Node.js.
Dengan Connect, Anda mendefinisikan skema Anda terlebih dahulu:
service ElizaService {
rpc Say(SayRequest) returns (SayResponse) {}
}
Dan dengan keajaiban pembuatan kode, skema ini menghasilkan server dan klien:
const answer = await eliza . say ( { sentence : "I feel happy." } ) ;
console . log ( answer ) ;
// {sentence: 'When you feel happy, what do you do?'} Tidak seperti istirahat, panggilan prosedur jarak jauh adalah jenis-aman, tetapi mereka adalah HTTP biasa di bawah kap. Anda dapat melihat semua permintaan di Inspektur Jaringan, dan Anda dapat curl jika Anda mau:
curl
--header ' Content-Type: application/json '
--data ' {"sentence": "I feel happy."} '
https://demo.connectrpc.com/connectrpc.eliza.v1.ElizaService/SayConnect Menggunakan Protobuf-ES, satu-satunya perpustakaan Javascript Protobuf yang sepenuhnya sesuai.
Connect Implement RPC Tiga Protokol: Protokol GRPC dan GRPC-WEB yang tersedia secara luas, dan protokol Connect sendiri, dioptimalkan untuk web. Ini memberi Anda interoperabilitas yang tak tertandingi di banyak platform dan bahasa, dengan tipe-keamanan ujung ke ujung.
Ikuti tutorial 10 menit kami di mana kami menggunakan vite dan bereaksi untuk membuat antarmuka web untuk Eliza.
React , Svelte , Vue , Next.js dan Angular didukung (lihat contoh), dan kami memiliki paket ekspansi untuk kueri Tanstack. Kami mendukung semua browser web modern yang mengimplementasikan API Fetch yang tersedia secara luas dan API pengkodean.
Ikuti tutorial 10 menit kami untuk memutar layanan di Node.js, dan panggil dari web, dan dari klien GRPC di terminal Anda.
Anda dapat melayani RPC koneksi Anda dengan vanilla node.js, atau menggunakan plugin server kami untuk mengatasinya , next.js , dan ekspres . Kami mendukung Node.js v18.14.1 dan yang lebih baru dengan modul http dan http2 builtin.
Jika Anda bermigrasi dari V1 ke V2, lihat panduan migrasi kami;
Apakah Anda ingin menggunakan Connect di platform lain seperti Bun, Deno, Runtime Edge Vercel, atau Pekerja Cloudflare? Kami ingin belajar tentang kasus penggunaan Anda dan apa yang ingin Anda lakukan dengan Connect. Anda dapat menghubungi kami baik melalui Buf Slack atau dengan mengajukan masalah GitHub dan kami akan dengan senang hati mengobrol!
Perpustakaan dan kode yang dihasilkan kompatibel dengan ES2017 dan TypeScript 4.9.5.
Ditawarkan di bawah lisensi Apache 2.