See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 61848|Vastuse: 3

[.NET tuum] ASP.NET Core Middleware'i üksikasjalik selgitus

[Kopeeri link]
Postitatud 18.09.2019 11:35:59 | | | |
Mis on Middleware?

Middleware on tarkvara, mis on kokku pandud rakenduste torustikutesse, et hallata päringuid ja vastuseid. Iga komponent:

  • Vali, kas edastada päring järgmisele komponendile torujuhtmes.
  • Tööd saab teha enne ja pärast järgmise komponendi käivitamist torujuhtmes.

Päringudelegaate kasutatakse päringute torujuhtme ehitamiseks, mis haldab iga HTTP päringut.

Päringudelegaadid konfigureeritakse Run, Map ja Use laienduse meetodite abil. Eraldi päringudelegaati saab määrata anonüümses meetodis (nimetatakse inline middleware) või taaskasutatavas klassis. Need taaskasutatavad klassid ja inline anonümismeetodid on vahendustarkvara või vahendustarkvara komponendid. Iga vahendustarkvara komponent päringuvoos vastutab järgmise komponendi kutsumise eest torujuhtmes ja vajadusel ka lingi lühise kutsumise eest.

HTTP moodulite migreerimine middleware'ile selgitab erinevust ASP.NET Core'i ja päringutorujuhtmete vahel varasemates versioonides (ASP.NET) ning toob rohkem näiteid middleware'i kohta.

Kasuta IApplicationBuilderit, et luua vahendustarkvara torujuhtme

ASP.NET Core päringuprotsess koosneb mitmest päringu delegaatidest, nagu näidatud järgmisel joonisel (täitmisprotsess järgib musta noolt):

Iga delegaat saab teha tegevusi enne ja pärast järgmist delegaati. Volinik võib otsustada ka mitte edastada taotlust järgmisele delegaadile, mida nimetatakse lühiseks taotlustorus. Lühise tekkimine on tavaliselt soovitav, sest see väldib tarbetut tööd. Näiteks võib staatiline failivahendustarkvara tagastada staatilise faili päringu ja lühistada ülejäänud torujuhtme. Erandite käsitlemise delegaadid tuleb käivitada varakult torujuhtmes, et nad saaksid erandeid hilisemates torujuhtmetes tabada.

Kõige lihtsam on ilmselt määrata Core rakenduse ASP.NET delegaat, kes tegeleb kõigi päringutega. See stsenaarium ei hõlma tegelikku päringu torujuhtme. Selle asemel kutsutakse iga HTTP päringu jaoks anonüümne meetod.


Esimene rakendus. Run delegate lõpetab torujuhtme.

On olemas selline kood:




Brauseri kaudu avatuna selgub, et see on tõepoolest esimeses rakenduses. Run lõpetab torujuhtme.



Rakendusega saab delegeerida mitu taotlust. Kasutus on omavahel seotud. Järgmine parameeter tähistab torujuhtme järgmist delegaati. (Pea meeles, et saad torujuhtme lõpetada, kui ei kutsu järgmist parameetrit.) Tavaliselt saab tegevusi teha enne ja pärast järgmist delegeerimist, nagu näidatud järgmises näites:

Brauseri kasutamine tulemuste saamiseks nagu:



On näha, et taotluse delegaadi täitmise järjekord järgib ülaltoodud vooskeemi.

Märkus:

Pärast vastuse saatmist kliendile ära helista järgmisena. Invoke。 Pärast vastuse algust lisavad HttpResponse'i muudatused erandi. Näiteks vastuse päiste, olekukoodide jms seadistamine tekitab erandi. Kirjuta vastuse osa pärast järgmist kõnet.

võib viia kokkuleppe rikkumiseni. Näiteks kirjutada rohkem kui sisupikkus on kirjeldatud sisupikkuses.

Responsiivne sisuvormindus võib olla katki. Näiteks kirjuta HTML jalus CSS-faili.

HttpResponse.HasStarted on kasulik vihje, et näidata, kas vastuse päis on saadetud ja/või sisu on kirjutatud.


Sisseehitatud vahetarkvara

ASP.NET Core sisaldab järgmisi middleware'i komponente:


Middlewarekirjeldus
AutentimineAutentimistugi on saadaval
CORSSeadista domeenideülene ressursside jagamine
Vastusvahemällu salvestamineVahemälu vastuse tugi on saadaval
Vastuse kokkusurumineToeta vastuskompressiooni
MarsruutimineMääratle ja piira päringute marsruutimist
SessioonPakub kasutaja sessioonihaldust
Staatilised failidToetab staatiliste failide ja kataloogide sirvimist
URL Middleware'i ümberkirjutamineKasutati URL-ide ümberkirjutamiseks ja ümbersuunamise toe taotlemiseks





Eelmine:Baidu uus toode! One Moment Albumi hetkel saab 1 miljon kasutajat nõuda piiramatut salvestusruumi:
Järgmine:Inglise keele 4. ja 6. taseme kuulamine ja magistrijärgne sisseastumiseksam Inglise keele sõnavara korduseksam Suuline andmete jagamine
Postitatud 22.09.2021 20:47:00 |
Õpi õppima...
Postitatud 10.10.2021 18:55:42 |
Õpi õppima, see artikkel avab liikmelisuse
Postitatud 10.10.2021 18:59:21 |
https://www.cnblogs.com/stulzq/p/7760648.html
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com