Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 54622|Vastaus: 0

[Lähde] .NET Core kutsuu gRPC HTTP (ei-TLS-suojattu) osoitevirheratkaisuja

[Kopioi linkki]
Julkaistu 2021-3-22 16:45:16 | | | |
gRPC on korkean suorituskyvyn etäproseduurikutsu (RPC) -kehys, joka on kieliriippumaton.

gRPC:n tärkeimmät hyödyt ovat:

Moderni, suorituskykyinen ja kevyt RPC-kehys.
Sopimuslähtöinen API-kehitys, joka käyttää protokollapuskureita oletuksena, mahdollistaen kieliriippumattomat toteutukset.
Työkaluja saatavilla useilla kielillä vahvasti tyypitettyjen palvelimien ja asiakkaiden luomiseen.
Tukee asiakas-, palvelin- ja kaksisuuntaisia suoratoistopuheluita.
Vähennä verkon käyttöä Protobuf-binäärisarjoituksella.

Nämä edut tekevät gRPC:stä sopivan seuraaviin tarkoituksiin:

Kevyet mikropalvelut, joissa tehokkuus on kriittistä.
Monikieliset järjestelmät, jotka vaativat useita kieliä kehitykseen.
Vertaisverkkopalvelut, jotka käsittelevät suoratoistopyyntöjä tai -vastauksia.

Arvostelu:
Käytännön taistelu: ASP.NET Core käyttää gRPC-viestintää
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Google Protocol Buffers Pikakäynnistys
https://www.itsvse.com/thread-3626-1-1.html

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

Kun käytetään ASP.NET Core 3.1:ttä, gRPC-palvelu on käytössä, ja HTTP/2-päätepiste konfiguroidaan ilman TLS-suojausta, katso:Hyperlinkin kirjautuminen on näkyvissä.

Käytin .NET Core 3.1 -konsolia ja yritin soittaa HTTP gRPC -palveluosoitteen, mutta sain seuraavan virheen:


Käsittelemätön poikkeus. Grpc.Core.RpcException: Status(StatusCode="Ei saatavilla", Detail="Virhe gRPC-kutsun käynnistyessä. HttpRequestException: Pyyntöä lähetettäessä tapahtui virhe. IOException: Vastaus päättyi ennenaikaisesti.", DebugException="System.Net.Http.Http.RequestException: Pyyntöä lähetettäessä tapahtui virhe.
---> System.IO.IOException: Vastaus päättyi ennenaikaisesti.



Riippuen siitä, mitä .NET-versiota sovelluksesi käyttää, turvattoman gRPC-palvelun kutsumiseen liittyy joitakin lisävaatimuksia:

.NET 5 tai uudempi vaatii Grpc.Net.Client version 2.32.0 tai uudemman.
.NET Core 3.x vaatii lisäasetuksia. Sovelluksen on asetettava System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport -kytkin todeksi:


Asiakasasetukset ovat seuraavat:

Vain .NET Core 3.x vaatii System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport-kytkimen. .NET 5:ssä ei vaadita lisäasetuksia, eikä tämä ole vaatimus


Hyperlinkin kirjautuminen on näkyvissä.





Edellinen:.NET/C# Heijastus-, Emit- ja Expression-suorituskyvyn testaus
Seuraava:Myöhäiset tulokkaat raportoivat
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com