Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 54622|Svar: 0

[Kilde] .NET Core kalder gRPC HTTP (ikke-TLS beskyttet) adressefejlløsninger

[Kopier link]
Opslået den 22-3-2021 16:45:16 | | | |
gRPC er et højtydende remote procedure call (RPC) framework, der er sprog-agnostisk.

De vigtigste fordele ved gRPC er:

Moderne, højtydende, letvægts RPC-rammeværk.
Kontraktbaseret API-udvikling, der som standard bruger protokolbuffere, hvilket muliggør sprog-agnostiske implementeringer.
Værktøjer tilgængelige i flere sprog til at generere stærkt typede servere og klienter.
Understøtter klient-, server- og tovejs-streamingopkald.
Reducer brugen af netværket med Protobuf binær serialisering.

Disse fordele gør gRPC egnet til:

Letvægts mikrotjenester, hvor effektivitet er afgørende.
Polyglotte systemer, der kræver flere sprog for udvikling.
Peer-to-peer realtidstjenester, der skal håndtere streaming-forespørgsler eller svar.

Anmeldelse:
Praktisk kamp: ASP.NET Core bruger gRPC-kommunikation
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Google Protocol Buffers Quick Start
https://www.itsvse.com/thread-3626-1-1.html

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

Når man bruger ASP.NET Core 3.1, aktiveres en gRPC-tjeneste, og HTTP/2-endepunktet konfigureres uden TLS-beskyttelse, se:Hyperlink-login er synlig.

Ved at bruge .NET Core 3.1-konsollen forsøgte jeg at kalde HTTP gRPC-serviceadressen med følgende fejl:


Ubehandlet undtagelse. Grpc.Core.RpcException: Status(StatusCode="Unavailable", Detail="Fejl ved start af gRPC-kald. HttpRequestException: En fejl opstod under afsendelsen af anmodningen. IOException: Svaret sluttede for tidligt.", DebugException="System.Net.Http.HttpRequestException: En fejl opstod under afsendelsen af anmodningen.
---> System.IO.IOException: Svaret sluttede for tidligt.



Afhængigt af hvilken version af .NET din app bruger, er der nogle yderligere krav for at kalde en usikker gRPC-tjeneste:

.NET 5 eller nyere kræver Grpc.Net.Client version 2.32.0 eller nyere.
.NET Core 3.x kræver yderligere konfiguration. Appen skal sætte System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport-switchen til true:


Klientindstillingerne er som følger:

Kun .NET Core 3.x kræver System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport-switchen. Der kræves ingen yderligere konfiguration i .NET 5, og dette krav er heller ikke nødvendigt


Hyperlink-login er synlig.





Tidligere:.NET/C# Refleksion, Emitter, Udtrykspræstationstest
Næste:Sene nytilkomne rapporter
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com