Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 45031|Odpoveď: 1

[ASP.NET] ASP.NET Podrobné vysvetlenie middleware middleware v Core (9).

[Kopírovať odkaz]
Zverejnené 12. 5. 2021 o 11:21:52 | | | |
Middleware je typ softvéru, ktorý sa zostavuje do aplikačného pipeline na spracovanie požiadaviek a odpovedí. Každý komponent:
  • Zvoľte, či požiadavku odovzdáte ďalšiemu komponentu v pipeline.
  • Práca môže byť vykonaná pred aj po ďalšej komponente v pipeline.
Delegácia požiadaviek sa používa na vytvorenie pipeline požiadaviek. Požiadajte delegátov na spracovanie každej HTTP požiadavky.

Dokumentácia:Prihlásenie na hypertextový odkaz je viditeľné.

Revízia:
ASP.NET Podrobné vysvetlenie Core Middleware
https://www.itsvse.com/thread-8126-1-1.html

ASP.NET z predvolených parametrov používateľského rozhrania Swagger v Core(8).
https://www.itsvse.com/thread-9640-1-1.html

ASP.NET Jadro (7) Hĺbková analýza zdrojového kódu frameworku
https://www.itsvse.com/thread-9601-1-1.html

ASP.NET Core (VI) DI manuálne získava metódu injektovania objektov
https://www.itsvse.com/thread-9595-1-1.html

ASP.NET Core (päť) je založený na distribuovaných transakciách podľa CAP
https://www.itsvse.com/thread-9593-1-1.html

ASP.NET Core(4) filter zjednotený validácia modelu ModelState
https://www.itsvse.com/thread-9589-1-1.html

ASP.NET Jadro (iii) Dynamicky vytvárať inštancie pomocou ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Core (2) Reštartovať aplikáciu pomocou kódu
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) používa Redis caching
https://www.itsvse.com/thread-9393-1-1.html
ASP.NET Core MiddlewareMiddleware je registrovaný v singleton modeli, to znamená, že aplikácia bude inštancovaná len raz a konštruktér bude inicializovaný len raz od začiatku do konca.

Najprv vytvorme nový middleware TestMiddleware s nasledujúcim kódom:


Zaregistrujte sa v metóde Configure v počiatočnom súbore, nasledovne:

Middleware zachytáva priame odpovede

Skúste zachytiť požiadavku na cestu /home/index2 a priamo odpovedať na časť JSON správy, kód je nasledovný:



Middleware middleware prenáša hodnoty parametrov

Niekedy je potrebné odovzdať nejaké parametre do middleware, napríklad: zachytenú adresu, informácie o odpovedi a podobne.

Metóda UseMiddleware() na odovzdanie parametra objekt[] konštruktoru middleware, čo znamená, že môžeme prenášať ľubovoľný počet parametrov middleware cez parameter object[], pokiaľ sa parametre typu a konštruktora middleware zhodujú.

Môže sa prenášať kódom takto:




Middleware middleware sa prenáša medzi hodnotami

Vytvoríme nový middleware Test2Middleware, zaregistrujeme viacero middleware súčasne a následný middleware musí vykonať logické spracovanie podľa predchádzajúceho middleware, teda odovzdať parametre medzi middleware, kód je nasledovný:




Middleware OnStarting reaguje na delegáciu

Keďže middleware môže registrovať viacero a prechádzať viacerými medziprocesmi, posledný middleware chce niečo urobiť pred odpoveďou, môže zaregistrovať delegáta OnStarting. Test vykoná zmenu hlavičky v kontexte HttpResponse.OnStarting(Func<Task>), aby sa zabezpečilo, že callback bude vykonaný bezprostredne pred odoslaním odpovede klientovi.


Kód je nasledovný:



(Koniec)




Predchádzajúci:EF entity typu prílohy "XXXX" zlyhávajú, pretože iné...
Budúci:POI používa tri metódy: HSSF, XSSF, SXSSF
Zverejnené 2021-9-22 19:59:27 |
Nauč sa učiť...
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com