Bagikan melalui


Menggunakan gRPC di aplikasi browser

Catatan

Ini bukan versi terbaru dari artikel ini. Untuk rilis saat ini, lihat versi .NET 8 dari artikel ini.

Peringatan

Versi ASP.NET Core ini tidak lagi didukung. Untuk informasi selengkapnya, lihat Kebijakan Dukungan .NET dan .NET Core. Untuk rilis saat ini, lihat versi .NET 8 dari artikel ini.

Penting

Informasi ini berkaitan dengan produk pra-rilis yang mungkin dimodifikasi secara substansial sebelum dirilis secara komersial. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.

Untuk rilis saat ini, lihat versi .NET 8 dari artikel ini.

Oleh James Newton-King

Tidak dimungkinkan untuk langsung memanggil layanan gRPC dari browser. gRPC menggunakan fitur HTTP/2, dan tidak ada browser yang menyediakan tingkat kontrol yang diperlukan atas permintaan web untuk mendukung klien gRPC.

gRPC di ASP.NET Core menawarkan dua solusi yang kompatibel dengan browser, gRPC-Web dan transcoding gRPC JSON.

gRPC-Web

gRPC-Web memungkinkan aplikasi browser untuk memanggil layanan gRPC dengan klien gRPC-Web dan Protobuf.

  • Mirip dengan gRPC normal, tetapi memiliki protokol kawat yang sedikit berbeda, yang membuatnya kompatibel dengan HTTP/1.1 dan browser.
  • Memerlukan aplikasi browser untuk menghasilkan klien gRPC dari .proto file.
  • Memungkinkan aplikasi browser mendapatkan manfaat dari penggunaan jaringan berkinerja tinggi dan rendah dari pesan biner.

.NET memiliki dukungan bawaan untuk gRPC-Web. Untuk informasi selengkapnya, lihat gRPC-Web di aplikasi gRPC ASP.NET Core.

transcoding gRPC JSON

Transcoding gRPC JSON memungkinkan aplikasi browser untuk memanggil layanan gRPC seolah-olah api tersebut RESTpenuh dengan JSAKTIF.

  • Aplikasi browser tidak perlu menghasilkan klien gRPC atau tahu apa pun tentang gRPC.
  • RESTAPI ful secara otomatis dibuat dari layanan gRPC dengan membuat .proto anotasi file dengan metadata HTTP.
  • Memungkinkan aplikasi untuk mendukung API web gRPC dan JSON tanpa menduplikasi upaya membangun layanan terpisah untuk keduanya.

.NET memiliki dukungan bawaan untuk membuat JSAPI web ON dari layanan gRPC. Untuk informasi selengkapnya, lihat transcoding gRPC JSON di aplikasi gRPC ASP.NET Core.

Catatan

transcoding gRPC JSON memerlukan .NET 7 atau yang lebih baru.

Sumber Daya Tambahan: