INFO: ASP.ČISTÝ HTTP moduly a HTTP handler prehľad

Preklady článku Preklady článku
ID článku: 307985 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

SUHRN

Tento článok poskytuje Úvod do ASP.NET HTTP moduly a HTTP handler.

Pre ďalšie ASP.ČISTÁ prehľady, označovať nasledujúci článok databázy Microsoft Knowledge Base:
305140 INFO: ASP.NET plán

DALSIE INFORMACIE

HTTP moduly a HTTP handler sú neoddeliteľnou súčasťou ASP.ČISTÝ architektúry. Zatiaľ čo sa spracováva žiadosti, každú žiadosť je spracované prostredníctvom viacerých modulov, HTTP (napríklad authentication module a Relácia modul) a potom spracovania jednotný HTTP handler. Po obslužný program spracoval žiadosť, žiadosť toky späť prostredníctvom HTTP moduly.

Tento článok je rozdelená do nasledujúcich sekcií:

HTTP moduly

Moduly sa nazývajú pred a po manipulujúceho popravených. Moduly mohli programátori zachytiť, zúčastňovať na alebo modifikovať každého jednotlivca žiadosť. Moduly implementovať IHttpModule rozhranie, ktoré je umiestnené v System.Web priestor názvov.

Dostupné udalosti

An HttpApplication trieda poskytuje počet udalostí s ktorými modulov môže synchronizovať. Tieto udalosti sú k dispozícii pre moduly na synchronizáciu s na každú žiadosť. Tieto udalosti sú uvedené v sekvenčnom poradí:
  • BeginRequest: Žiadosť nebola spustená. Ak potrebujete urobiť niečo na začiatku žiadosť (napríklad, displej reklama bannery v hornej každej stránky), synchronizovať túto udalosť.
  • AuthenticateRequest: Ak chcete pripojiť vlastné vlastného overovania systému (napríklad, vyhľadať používateľovi proti databáze overiť heslo) vybudovať modul, ktorý synchronizuje tejto udalosti a overuje používateľa ako ste chcieť.
  • AuthorizeRequest: Táto udalosť sa používa interne na implementáciu povolenia mechanizmy (napríklad uložiť vašu kontrolu prístupu zoznam (zoznamy ACL) v databáza skôr ako v systéme súborov). Hoci môžete prepísať túto udalosť nie sú veľa dôvodov tak urobiť.
  • ResolveRequestCache: Táto udalosť určuje, ak stránke môže byť doručená z výstupu Vyrovnávacia pamäť. Ak chcete napísať vlastný caching modul (napríklad vytvoriť súbor-cache založené skôr ako memory cache), synchronizovať túto udalosť určiť, či má slúžiť stránku z cache.
  • AcquireRequestState: Relácie štátu sa načítajú z ukladacieho priestoru štátu. Ak chcete stavať vlastné modul riadenia štátu, synchronizovať túto udalosť Chopte Stav relácie z vášho štátu ukladať.
  • PreRequestHandlerExecute: Táto udalosť nastane skôr, než HTTP handler popravený.
  • PostRequestHandlerExecute: Udalosť sa objaví po HTTP handler je popravený.
  • ReleaseRequestState: Relácie štátu je uložená späť v štáte skladu. Ak ste budovanie vlastnú reláciu štátu modul, musíte uložiť váš štát späť vo vašej štát skladu.
  • UpdateRequestCache: Táto udalosť zapíše výstup späť na vyrovnávacia pamäť na výstup. Ak ste budovanie vlastnej cache module, píšete výstup späť na vaše Vyrovnávacia pamäť.
  • EndRequest: Žiadosť musí byť dokončená. Chcete stavať ladenie modul, ktorý zhromažďuje informácie v celej žiadosti a potom píše informácie na stránke.
Tieto udalosti sú k dispozícii pre moduly na synchronizáciu s pre každú žiadosť prenos. Poradie týchto udalostí je nepredv??date??n??.
  • PreSendRequestHeaders: Táto udalosť nastane pred hlavičky sú zasielané. Ak chcete pridať ďalšie hlavičky, môžete synchronizovať túto udalosť z vlastné modul.
  • PreSendRequestContent: Táto udalosť vyskytne pri Response.Flush metóda sa nazýva. Ak chcete pridať ďalší obsah, môžete Synchronizovať túto udalosť z modulu vlastné.
  • Chyba: Táto udalosť sa vyskytne, keď dôjde k nespracovanú výnimku. Ak ste chcete písať vlastné chybové Popisovač modulu, synchronizovať túto udalosť.

Konfigurácia HTTP moduly

<httpModules>Konfigurácia oddiel manipulujúceho je zodpovedná za konfiguráciu HTTP modulov v rámci žiadosti. To môže byť deklarovaná v počítači, lokalite alebo úrovni aplikácie. Použite nasledujúcu syntax pre <httpModules>oddiel handler:<b00> </b00> </httpModules> </httpModules>
<httpModules>
   <add type="[COM+ Class], [Assembly]" name="[ModuleName]" />
   <remove type="[COM+ Class], [Assembly]" name="[ModuleName]" />
   <clear />
</httpModules>
				

Vytváranie HTTP moduly

Chcete vytvoriť HTTP modul, musí sa implementovať IHttpModule rozhranie. The IHttpModule rozhranie má dve metódy s nasledovné podpisy:
void Init(HttpApplication);
void Dispose();
				
Ďalšie informácie o vytváraní HTTP moduly, kliknite na tlačidlo nasledovné čísla článkov databázy Microsoft Knowledge Base:
308000 AKO: Vytvoriť ASP.ČISTÝ HTTP modul pomocou jazyka Visual Basic.NET
307996 AKO: Vytvoriť ASP.ČISTÝ HTTP modul pomocou Visual C#.NET

HTTP Handler

Obslužné programy sa používajú na spracovávať požiadavky jednotlivých koncový bod. Obslužné programy umožňujú ASP.NET framework spracovať jednotlivé adresy URL protokolu HTTP alebo skupín URL rozšírenia v rámci žiadosti. Na rozdiel od modulov, je len jeden handler používané na spracovanie žiadosti. Všetky popisovače implementovať IHttpHandler rozhranie, ktoré je umiestnené v System.Web priestor názvov. Obsluhy sú trochu analogické s internetovým serverom Rozšírení Programming Interface (ISAPI) aplikácie.

Konfigurácia HTTP Handler

<httpHandlers>Konfigurácia oddiel manipulujúceho je zodpovedný za mapovanie prichádzajúce URL na<b00> </b00> </httpHandlers>IHttpHandler alebo IHttpHandlerFactory trieda. Môže byť oznámená na počítač, lokalita alebo aplikácia úroveň. Podadresáre dedia tieto nastavenia.

Správcovia používajú <add>tag smernica nakonfigurovať časti <httpHandlers>. <Add>smerníc sú interpretované a spracované v zhora, sekvenčné poradie. Použite nasledujúcu syntax pre <httpHandler>oddiel handler:<b00> </b00> </httpHandler> </Add> </httpHandlers> </add>
<httpHandlers>
   <add verb="[verb list]" path="[path/wildcard]" type="[COM+ Class], [Assembly]" validate="[true/false]" />
   <remove verb="[verb list]" path="[path/wildcard]" />
   <clear />
</httpHandlers>
				

Vytváranie HTTP Handler

Chcete vytvoriť HTTP handler, musí sa implementovať IHttpHandler rozhranie. The IHttpHandler rozhranie má jednu metódu a jednu vlastnosť s nasledujúcim podpisy:
void ProcessRequest(HttpContext);
bool IsReusable {get;}
				
POZNÁMKA: Ak relácie štátu sa vyžaduje HTTP handler, potrebujete tiež implementovať IRequiresSessionState rozhranie. Ďalšie informácie o vytváraní HTTP handler kliknutí nasledovné čísla článkov databázy Microsoft Knowledge Base:
308001 AKO: Vytvoriť ASP.NETTO HTTP Handler pomocou Visual C#.NET
Ďalšie informácie, kliknite na tlačidlo nasledovné čísla článkov databázy Microsoft Knowledge Base:
307997 AKO: Vytvoriť ASP.NETTO HTTP Handler pomocou jazyka Visual Basic.NET

Vlastnosti

ID článku: 307985 - Posledná kontrola: 1. novembra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
Kľúčové slová: 
kbarttyperoadmap kbhttphandlers kbhttpmodule kbhttpruntime kbinfo kbmt KB307985 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:307985

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com