BILGI: ASP.NET HTTP modülleri ve HTTP işleyicileri genel bakış

Makale numarası: 307985 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu makalede, ASP.NET HTTP giriş sağlar modüller ve HTTP işleyicileri.

Ek ASP.NET genel bakış için aşağıdaki Microsoft Knowledge Base makalesine başvurun:
305140BILGI: ASP.NET Yol Haritası

Daha fazla bilgi

HTTP modüllerini ve HTTP işleyicileri, ASP.NET mimarisi bütünleyici bir parçasıdır. Istek işleniyor, her istekte birden çok HTTP modülü tarafından (örneğin, kimlik doğrulama modülü ve oturum modülünün) işlenir ve sonra tek bir HTTP işleyicisi tarafından işlenir. Işleyicinin isteğini işledi sonra isteği geri HTTP akış sayısı modülleri.

Bu makalede, aşağıdaki bölümlere ayrılmıştır:

HTTP Modules

Modüller, önce ve işleyicinin çalıştırdıktan sonra olarak adlandırılır. Modüller müdahale katılma ya da her bir istek değiştirmek, geliştiriciler etkinleştirin. Modüller System.Web ad boşluğunda bulunan ıhttpmodule arabirimini uygular.

Available Events

Bir HttpApplication sınıfı, bir sayı ile modülleri eşitleyebilirsiniz olayların sağlar. Aşağıdaki olaylar modülleri her istekte eşitlemek kullanılabilir. Bu olaylar, sırayla listelenir:
  • BeginRequest: istek yeniden başlatıldı. Bu olay, bir istek (örneğin, görüntü reklam başlıklarını her sayfanın üst) başına bir şeyler yapmak gerekiyorsa, eşitleyin.
  • AuthenticateRequest: kendi özel kimlik doğrulama düzeninde taktığınızda isterseniz (örneğin, parolayı doğrulamak için bir veritabanı kullanıcı bakın), bu olay eşitler ve nasıl istediğiniz kullanıcının kimliğini doğrular bir modül oluşturun.
  • AuthorizeRequest: Bu olay yetkilendirme mekanizmaları (örneğin, erişim denetim listelerini (ACL) dosya sistemi yerine bir veritabanında depolamak için) uygulamak için dahili olarak kullanılır. Bu olay geçersiz kılar, ancak değil bunu yapmak için çok iyi nedenleri vardır.
  • ResolveRequestCache: sayfa ç?kt?s? sunulan, bu olay belirler önbellek. Kendi önbelleğe alma Modülü (örneğin, dosya tabanlı Derleme Önbelleği yerine bir önbellek) yazmak istiyorsanız, bu olay, sayfayı önbellekten hizmet çalıştırılıp çalıştırılmayacağını eşitleyin.
  • AcquireRequestState: oturum durumu durum depolama alanından alınır. Oturum durumu, <a0>Durum</a0> deposundan edinmek için bu olay, kendi Durum Yönetimi modülündeki oluşturmak isterseniz, eşitleme.
  • PreRequestHandlerExecute: HTTP işleyicisi yürütülmeden önce bu olay oluşur.
  • PostRequestHandlerExecute: HTTP işleyicisi yürütüldükten sonra bu olay oluşur.
  • ReleaseRequestState: oturum durumu geri durum deposunda saklanır. Bir özel oturum durumu modülünün oluşturuyorsanız, eyaletinizi geri durumu deponuzun saklamanız gerekir.
  • UpdateRequestCache: Bu olay çıkış geri çıkış önbelleğe yazar. Özel bir önbellek modül oluşturuluyorsa, çıktı önbelleğiniz için yazmak.
  • EndRequest: isteği tamamlanmıştır. Hata ayıklama isteği bilgileri toplar ve sonra bu bilgileri sayfasına yazar modül oluşturmak isteyebilirsiniz.
Aşağıdaki olaylar modülleri, her isteği aktarım için eşitleme kullanılabilir. Bu olaylar deterministic olmayan sırasıdır.
  • PreSendRequestHeaders: üstbilgileri gönderilmeden önce bu olay oluşur. Ek üstbilgileri eklemek isterseniz, bu olay, özel bir modülden eşitleyebilirsiniz.
  • PreSendRequestContent: Response.Flush'tan yöntemi ça?r?ld???nda, bu olay oluşur. Ek içerik eklemek isterseniz, bu olay, özel bir modülden eşitleyebilirsiniz.
  • Hata: işlenmeyen bir özel durum oluştuğunda, bu olay oluşur. Bu olay, bir özel hata işleyicisi modülü yazmak isterseniz, eşitlenecek.

Configuring HTTP Modules

<httpmodules>Yapılandırma bölümü işleyicisi, bir uygulamadaki HTTP modüllerini yapılandırmak için sorumludur. Bilgisayar, site veya uygulama düzeyinde bildirilebilir. Aşağıdaki sözdizimini <httpmodules>bölümü işleyici için kullanın:
<httpModules>
   <add type="[COM+ Class], [Assembly]" name="[ModuleName]" />
   <remove type="[COM+ Class], [Assembly]" name="[ModuleName]" />
   <clear />
</httpModules>
				

Creating HTTP Modules

Bir HTTP modülü oluşturmak için <a0></a0>, ıhttpmodule arabirimini uygulamalıdır. ıhttpmodule arabirim aşağıdaki imzalara sahip iki yöntem vardır:
void Init(HttpApplication);
void Dispose();
				
HTTP modülleri oluşturma hakkında ek bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
308000NASıL YAPıLıR: Visual Basic .NET kullanarak bir ASP.NET HTTP modülü oluştur.
307996NASıL YAPıLıR: Visual C#. NET'i kullanarak, bir ASP.NET HTTP modülü oluştur

HTTP Handlers

Işleyici, tek tek son nokta istekleri işlemek için kullanılır. Işleyici, tek tek HTTP URL'lerinin veya URL uzantılarını uygulama içinde Grup işlemek ASP.NET framework etkinleştirin. Modülleri farklı olarak, yalnızca bir işleyicisi, bir isteği işlemek için kullanılır. Tüm işleyiciler System.Web ad boşluğunda bulunan ıhttphandler arabirimini uygular. Işleyicileri ınternet Sunucunuz'a biraz ROM'una uygulama programlama arabirimi (ISAPI) uzantısı.

Configuring HTTP Handlers

<httphandlers>Yapılandırma bölümü işleyicisi, gelen URL'lere eşleştirmek için sorumluSınıf ıhttphandler veya ıhttphandlerfactory. Bilgisayar, site veya uygulama düzeyinde bildirilebilir. Alt dizinleri, bu ayarları devralır.

Yöneticiler, <httphandlers>bölümü yapılandırmak için <a0><add></a0> etiketi yönergeyi kullanın. <add>yönergeleri yorumlandığını ve yukarıdan aşağıya sırayla işlenir. Aşağıdaki sözdizimini <httphandler>bölümü işleyici için kullanın:
<httpHandlers>
   <add verb="[verb list]" path="[path/wildcard]" type="[COM+ Class], [Assembly]" validate="[true/false]" />
   <remove verb="[verb list]" path="[path/wildcard]" />
   <clear />
</httpHandlers>
				

Creating HTTP Handlers

Bir HTTP işleyicisi oluşturmak için <a0></a0>, ıhttphandler arabirimini uygulamalıdır. Bir yöntem ve bir özellik ile aşağıdaki imzalar ıhttphandler arabirimi vardır:
void ProcessRequest(HttpContext);
bool IsReusable {get;}
				
Not: oturum durumu, HTTP işleyicisini gerekir, ayrıca IRequiresSessionState arabirimini gerekir. HTTP işleyicileri oluşturma hakkında ek bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
308001NASıL YAPıLıR: Visual C#. NET'i kullanarak, bir ASP.NET HTTP işleyicisi oluştur
Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
307997NASıL YAPıLıR: Visual Basic .NET kullanarak bir ASP.NET HTTP işleyicisi oluştur.

Özellikler

Makale numarası: 307985 - Son Gözden Geçirme: 23 Şubat 2007 Cuma - Gözden geçirme: 3.5
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
Anahtar Kelimeler: 
kbmt kbarttyperoadmap kbhttphandlers kbhttpmodule kbhttpruntime kbinfo KB307985 KbMttr
Otomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:307985

Geri Bildirim Ver