Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 54622|Jawab: 0

[Sumber] .NET Core memanggil solusi kesalahan alamat gRPC HTTP (non-TLS protected)

[Salin tautan]
Dipaparkan pada 2021-3-22 16:45:16 | | | |
gRPC adalah kerangka kerja panggilan prosedur jarak jauh (RPC) berkinerja tinggi yang agnostik bahasa.

Manfaat utama gRPC adalah:

Kerangka kerja RPC modern, berkinerja tinggi, dan ringan.
Pengembangan API yang mengutamakan kontrak yang menggunakan buffer protokol secara default, memungkinkan implementasi agnostik bahasa.
Alat tersedia dalam berbagai bahasa untuk menghasilkan server dan klien yang diketik dengan kuat.
Mendukung panggilan klien, server, dan streaming dua arah.
Kurangi penggunaan jaringan dengan serialisasi biner Protobuf.

Manfaat ini membuat gRPC cocok untuk:

Layanan mikro ringan di mana efisiensi sangat penting.
Sistem poliglot yang membutuhkan banyak bahasa untuk pengembangan.
Layanan real-time peer-to-peer yang perlu menangani permintaan atau respons streaming.

Resensi:
Pertarungan praktis: ASP.NET Core menggunakan komunikasi gRPC
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Mulai Cepat Buffer Protokol Google
https://www.itsvse.com/thread-3626-1-1.html

.net/c# Tutorial Google Protocol Buffers
https://www.itsvse.com/thread-3668-1-1.html

Saat menggunakan ASP.NET Core 3.1, layanan gRPC diaktifkan, dan titik akhir HTTP/2 dikonfigurasi tanpa perlindungan TLS, lihat:Login hyperlink terlihat.

Dengan menggunakan konsol .NET Core 3.1, saya mencoba memanggil alamat layanan gRPC HTTP dengan kesalahan berikut:


Pengecualian yang tidak ditangani. Grpc.Core.RpcException: Status(StatusCode="Tidak tersedia", Detail="Kesalahan memulai panggilan gRPC. HttpRequestException: Terjadi kesalahan saat mengirim permintaan. IOException: Respons berakhir sebelum waktunya.", DebugException="System.Net.Http.HttpRequestException: Terjadi kesalahan saat mengirim permintaan.
---> System.IO.IOException: Respons berakhir sebelum waktunya.



Bergantung pada versi .NET yang digunakan aplikasi Anda, ada beberapa persyaratan tambahan untuk memanggil layanan gRPC yang tidak aman:

.NET 5 atau yang lebih baru memerlukan Grpc.Net.Client versi 2.32.0 atau yang lebih baru.
.NET Core 3.x memerlukan konfigurasi tambahan. Aplikasi harus mengatur sakelar System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport ke true:


Pengaturan klien adalah sebagai berikut:

Hanya .NET Core 3.x yang memerlukan sakelar System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport. Tidak ada konfigurasi tambahan yang diperlukan di .NET 5, juga tidak diperlukan persyaratan ini


Login hyperlink terlihat.





Mantan:Pengujian performa Refleksi, Emitsi, Ekspresi .NET/C#
Depan:Laporan pendatang baru yang terlambat
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com