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

Näkymä: 61848|Vastaus: 3

[.NET Core] ASP.NET Yksityiskohtainen selitys Core Middlewaresta

[Kopioi linkki]
Julkaistu 18.9.2019 11.35.59 | | | |
Mitä on Middleware?

Middleware on ohjelmisto, joka kootaan sovellusputkiin käsittelemään pyyntöjä ja vastauksia. Jokainen osa:

  • Valitse, välitätkö pyynnön seuraavalle komponentille putkessa.
  • Työ voidaan tehdä ennen ja jälkeen seuraavan putken komponentin käyttöönoton jälkeen.

Pyyntödelegaatteja käytetään rakentamaan pyyntöputki, joka käsittelee jokaisen HTTP-pyynnön.

Pyyntödelegaatit konfiguroidaan Run, Map, and Use -laajennusmenetelmillä. Erillinen pyyntödelegaatti voidaan määritellä anonyymillä inline-metodilla (kutsutaan inline-middleware) tai se voidaan määritellä uudelleenkäytettävässä luokassa. Nämä uudelleenkäytettävät luokat ja inline-anonymisointimenetelmät ovat middleware- tai middleware-komponentteja. Jokainen middleware-komponentti pyyntökulussa vastaa seuraavan putken komponentin kutsumisesta ja tarvittaessa linkin oikosulusta.

HTTP-moduulien siirtäminen middlewareen selittää eron ASP.NET Coren ja pyyntöputkien välillä aiemmissa versioissa (ASP.NET) ja tarjoaa lisää esimerkkejä middleware-ohjeista.

Käytä IApplicationBuilderia middleware-putken luomiseen

ASP.NET Core -pyyntöprosessi koostuu sarjasta pyyntödelegaatteja, kuten seuraavassa kuvassa on esitetty (suoritusprosessi seuraa mustaa nuolta pitkin):

Jokainen delegaatti voi suorittaa toimintoja ennen ja jälkeen seuraavan edustajan. Edustaja voi myös päättää olla välittämättä pyyntöä seuraavalle edustajalle, mikä kutsutaan oikosuluksi pyyntöputkessa. Oikosulku on yleensä toivottava, koska se välttää turhaa työtä. Esimerkiksi staattisen tiedoston middleware voi palauttaa pyynnön staattiselle tiedostolle ja oikosulkea loput putkesta. Poikkeusten käsittelyn delegaatit täytyy kutsua käyttöön alkuvaiheessa, jotta poikkeuksia voidaan havaita myöhemmissä putkistoissa.

Yksinkertaisin tapa on todennäköisesti perustaa delegaatti Core ASP.NET sovellukseen hoitamaan kaikki pyynnöt. Tämä skenaario ei sisällä varsinaista pyyntöputkea. Sen sijaan jokaiselle HTTP-pyynnölle kutsutaan anonyymi metodi.


Ensimmäinen sovellus. Run delegate lopettaa putken.

On olemassa tällaista koodia:




Selaimen kautta avautuessaan se todetaan, että se on todellakin ensimmäisessä sovelluksessa. Run päättää putken.



Voit delegoida useita pyyntöjä sovelluksella. Käyttö on yhteydessä toisiinsa. Seuraava parametri edustaa seuraavaa delegaattia putkessa. (Muista, että voit lopettaa putken olemalla kutsumatta seuraavaa parametria.) Voit yleensä suorittaa toimintoja ennen ja jälkeen seuraavan delegoinnin, kuten seuraavassa esimerkissä on esitetty:

Selaimen käyttäminen tulosten lukemiseen, kuten:



On nähtävissä, että pyynnön edustajan toimeenpanojärjestys noudattaa yllä olevaa kaaviota.

Muistiinpano:

Kun vastaus on lähetetty asiakkaalle, älä soita seuraavaksi. Invoke。 Kun vastaus alkaa, HttpResponse-muutokset aiheuttavat poikkeuksen. Esimerkiksi vastausotsikoiden, tilakoodien jne. asettaminen aiheuttaa poikkeuksen. Kirjoita vastausrunko seuraavan soiton jälkeen.

voi johtaa sopimuksen rikkomiseen. Esimerkiksi kirjoittamalla enemmän kuin sisältöpituus, joka on kuvattu sisällönpituudessa.

Responsiivinen sisällön muotoilu voi olla rikki. Esimerkiksi kirjoita HTML-alakoodi CSS-tiedostoon.

HttpResponse.HasStarted on hyödyllinen vihje kertomaan, onko vastausotsikko lähetetty ja/tai teksti kirjoitettu.


Sisäänrakennettu middleware

ASP.NET Core sisältää seuraavat middleware-komponentit:


Middlewarekuvaus
TodennusTodennustuki on saatavilla
CORSKonfiguroi eri domainien resurssien jakaminen
VastevälimuistiVälimuistivastetuki on saatavilla
VastepakkausTarjoa tukea vastepakkaukselle
ReititysMäärittele ja rajoita pyyntöreititys
IstuntoTarjoaa käyttäjäistuntojen hallinnan
Staattiset tiedostotTarjoaa tukea staattiseen tiedostojen ja hakemiston selaamiseen
URL-rewriting MiddlewareKäytetään URL-osoitteiden uudelleenkirjoittamiseen ja uudelleenohjaustuen pyytämiseen





Edellinen:Baidun uusi tuote! One Moment Albumin tällä hetkellä miljoona käyttäjää voi vaatia rajoittamatonta tallennustilaa:
Seuraava:Englannin tasot 4 ja 6 Kuuntelu ja jatko-opintojen pääsykoe Englannin sanaston uudelleenarviointi Suullinen tiedon jakaminen
Julkaistu 22.9.2021 20.47.00 |
Opettele oppimaan...
Julkaistu 10.10.2021 18.55.42 |
Opettele oppimaan, tässä artikkelissa avaa jäsenyys
Julkaistu 10.10.2021 18.59.21 |
https://www.cnblogs.com/stulzq/p/7760648.html
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