Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 54622|Válasz: 0

[Forrás] A .NET Core gRPC HTTP (nem TLS védett) címhibamegoldásokat hív

[Linket másol]
Közzétéve: 2021-3-22 16:45:16 | | | |
a gRPC egy nagy teljesítményű távoli eljáráshívás (RPC) keretrendszer, amely nyelvtől független.

A gRPC fő előnyei a következők:

Modern, nagy teljesítményű, könnyű RPC keretrendszer.
Szerződéses API-fejlesztés, amely alapértelmezett protokollpuffereket használ, lehetővé téve nyelvfüggetlen megvalósításokat.
Több nyelven elérhető eszközök erősen típusozott szerverek és kliens generálásához.
Támogatja kliens, szerver és kétirányú streaming hívásokat.
Csökkentse a hálózat használatát Protobuf bináris serializációval.

Ezek az előnyök alkalmassá teszik a gRPC-t a következőkre alkalmasvá:

Könnyű mikroszolgáltatások, ahol a hatékonyság kritikus.
Poliglós rendszerek, amelyek fejlesztéséhez több nyelvet igényelnek.
Peer-to-peer valós idejű szolgáltatások, amelyeknek a streaming kéréseket vagy válaszokat kell kezelniük.

Szemle:
Gyakorlati harc: ASP.NET Core gRPC kommunikációt használ
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Google Protocol Buffers Gyors Indítás
https://www.itsvse.com/thread-3626-1-1.html

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

A Core 3.1 használatakor ASP.NET gRPC szolgáltatás van engedélyezve, és a HTTP/2 végpont TLS védelem nélkül van konfigurálva, lásd például:A hiperlink bejelentkezés látható.

A .NET Core 3.1 konzollal megpróbáltam meghívni a HTTP gRPC szolgáltatási címet, de a következő hibát követtem:


Kezeletlen kivétel. Grpc.Core.RpcException: Status(StatusCode="Unavailable", Detail="Error gRPC hívás indításánál. HttpRequestException: Hiba történt a kérés küldése közben. IOException: A válasz idő előtt véget ért.", DebugException="System.Net.Http.Http.RequestException: Hiba történt a kérés küldése közben.
---> System.IO.IOException: A válasz idő előtt véget ért.



Attól függően, hogy melyik .NET verziót használja az alkalmazásod, további követelmények vannak egy biztonságos gRPC szolgáltatás hívásához:

A .NET 5 vagy újabb verziókhoz Grpc.Net.Client verzió 2.32.0 vagy újabb verzió szükséges.
A .NET Core 3.x további konfigurációt igényel. Az alkalmazásnak be kell állítania a System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport kapcsolót valóra állítani:


Az ügyfél beállításai a következők:

Csak a .NET Core 3.x igényel a System.Net.Http.SocketsHttpHandleler.Http2UnencryptedSupport kapcsolót. A .NET 5-ben további konfiguráció nem szükséges, és ez sem kötelező


A hiperlink bejelentkezés látható.





Előző:.NET/C# Reflektív, Emit, Expresszív teljesítménytesztelés
Következő:Késői újonc beszámolók
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com