Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 54622|Atbildi: 0

[Avots] .NET Core izsauc gRPC HTTP (kas nav aizsargāts ar TLS) adreses kļūdu risinājumi

[Kopēt saiti]
Publicēts 2021-3-22 16:45:16 | | | |
gRPC ir augstas veiktspējas attālās procedūras izsaukuma (RPC) sistēma, kas ir neatkarīga no valodas.

Galvenās gRPC priekšrocības ir:

Moderns, augstas veiktspējas, viegls RPC ietvars.
Līguma pirmā API izstrāde, kas pēc noklusējuma izmanto protokola buferus, ļaujot valodas agnostiskai ieviešanai.
Rīki, kas pieejami vairākās valodās, lai ģenerētu stipri ierakstītus serverus un klientus.
Atbalsta klienta, servera un divvirzienu straumēšanas zvanus.
Samaziniet tīkla izmantošanu ar Protobuf bināro serializāciju.

Šīs priekšrocības padara gRPC piemērotu:

Vieglie mikropakalpojumi, kur efektivitāte ir kritiski svarīga.
Poliglotu sistēmas, kuru izstrādei nepieciešamas vairākas valodas.
Vienādranga reāllaika pakalpojumi, kuriem jāapstrādā straumēšanas pieprasījumi vai atbildes.

Pārskats:
Praktiskā cīņa: ASP.NET Core izmanto gRPC komunikāciju
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Google protokola buferu īsā pamācība
https://www.itsvse.com/thread-3626-1-1.html

.net/c# Google protokola buferu apmācība
https://www.itsvse.com/thread-3668-1-1.html

Izmantojot ASP.NET Core 3.1, gRPC pakalpojums ir iespējots un HTTP/2 galapunkts ir konfigurēts bez TLS aizsardzības, skatiet:Hipersaites pieteikšanās ir redzama.

Izmantojot .NET Core 3.1 konsoli, es mēģināju izsaukt HTTP gRPC pakalpojuma adresi ar šādu kļūdu:


Neapstrādāts izņēmums. Grpc.Core.RpcException: Status(StatusCode="Nav pieejams", Detail="Kļūda, sākot gRPC izsaukumu. HttpRequestException: nosūtot pieprasījumu, radās kļūda. IOException: atbilde beidzās priekšlaicīgi.", DebugException="System.Net.Http.HttpRequestException: nosūtot pieprasījumu, radās kļūda.
---> System.IO.IOException: atbildes reakcija beidzās priekšlaicīgi.



Atkarībā no .NET versijas, ko izmanto jūsu programma, ir dažas papildu prasības, lai izsauktu nedrošu gRPC pakalpojumu.

.NET 5 vai jaunākai versijai ir nepieciešama Grpc.Net.Client versija 2.32.0 vai jaunāka.
.NET Core 3.x ir nepieciešama papildu konfigurācija. Lietojumprogrammai ir jāiestata slēdzis System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport uz true:


Klienta iestatījumi ir šādi:

Tikai .NET Core 3.x ir nepieciešams slēdzis System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport. .NET 5 nav nepieciešama papildu konfigurācija, kā arī šī prasība nav nepieciešama


Hipersaites pieteikšanās ir redzama.





Iepriekšējo:.NET/C# atstarošana, izstarošana, izteiksmes veiktspējas testēšana
Nākamo:Novēloti jaunpienācēju ziņojumi
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com