¡¾·±ÌåÖÐÎÄ¡¿
¡¾ÉèΪÊ×Ò³¡¿
¡¾¼ÓÈëÊղء¿
µ±Ç°Î»Öãº.Net¼¼ÊõÊ×Ò³ >> Asp.Net¿ª·¢ >> ASP.NETÖеÄHTTPÄ£¿éºÍ´¦Àí³ÌÐò 3

ASP.NETÖеÄHTTPÄ£¿éºÍ´¦Àí³ÌÐò 3

2007-10-15 08:00:00  ×÷Õߣº  À´Ô´£º»¥ÁªÍø  ä¯ÀÀ´ÎÊý£º0  ÎÄ×Ö´óС£º¡¾´ó¡¿¡¾ÖС¿¡¾Ð¡¡¿
¼ò½é£ºÓÉÓÚÎÒÃÇÒѾ­½¨Á¢ÁËÓÃÓÚ´¦ÀíÐÂÀ©Õ¹ÎļþµÄ´¦Àí³ÌÐòÁË£¬ÎÒÃÇ»¹ÐèÒª°ÑÕâ¸öÀ©Õ¹Ãû¸æËßIIS²¢°ÑËüÓ³Éäµ½ASP.NET¡£Èç¹ûÄã²»Ö´ÐÐÕâ¸ö²½Öè¶øÊÔͼ·ÃÎÊHello.15secondsÎļþ£¬IIS½«¼òµ¥µØ·µ»Ø¸ÃÎļþ¶ø²»ÊǰÑËü´«µÝ¸øASP.NETÔË...

ÓÉÓÚÎÒÃÇÒѾ­½¨Á¢ÁËÓÃÓÚ´¦ÀíÐÂÀ©Õ¹ÎļþµÄ´¦Àí³ÌÐòÁË£¬ÎÒÃÇ»¹ÐèÒª°ÑÕâ¸öÀ©Õ¹Ãû¸æËßIIS²¢°ÑËüÓ³Éäµ½ASP.NET¡£Èç¹ûÄã²»Ö´ÐÐÕâ¸ö²½Öè¶øÊÔͼ·ÃÎÊHello.15secondsÎļþ£¬IIS½«¼òµ¥µØ·µ»Ø¸ÃÎļþ¶ø²»ÊǰÑËü´«µÝ¸øASP.NETÔËÐÐʱ¡£Æä½á¹ûÊǸÃHTTP´¦Àí³ÌÐò²»»á±»µ÷Óá£

¡¡¡¡ÔËÐÐInternet·þÎñ¹ÜÀíÆ÷£¬ÓÒ¼üµã»÷ĬÈÏWebÕ¾µã£¬Ñ¡ÔñÊôÐÔ£¬Òƶ¯µ½HomeĿ¼ѡÏîÒ³£¬²¢µã»÷ÅäÖð´Å¥¡£Ó¦ÓóÌÐòÅäÖöԻ°¿òµ¯³öÀ´ÁË¡£µã»÷Ìí¼Ó°´Å¥²¢ÔÚ¿ÉÖ´ÐÐ×Ö¶ÎÊäÈëASPnet_isapi.dllÎļþ·¾¶£¬ÔÚÀ©Õ¹×Ö¶ÎÊäÈë.15seconds¡£ÆäËü×ֶβ»Óô¦Àí£»¸Ã¶Ô»°¿òÈçÏÂËùʾ£º

µã»÷È·Èϰ´Å¥¹Ø±ÕÓ¦ÓóÌÐòÅäÖúÍĬÈÏWebÕ¾µãÊôÐÔ¶Ô»°¿ò¡£

¡¡¡¡ÏÖÔÚÎÒÃÇÔËÐÐInternet Explorer²¢ÊäÈëurl£ºhttp://localhost/webapp/hello.15seconds£¬¿´µ½µÄÒ³ÃæÈçÏ£º

HTTP´¦Àí³ÌÐòÖеĶԻ°×´Ì¬

¡¡¡¡Î¬»¤¶Ô»°×´Ì¬ÊÇWebÓ¦ÓóÌÐòÖ´ÐеÄ×îͨ³£µÄÊÂÎñ¡£HTTP´¦Àí³ÌÐòÒ²ÐèÒª·ÃÎÊÕâЩ¶Ô»°×´Ì¬¡£µ«ÊÇHTTP´¦Àí³ÌÐòµÄĬÈÏÉèÖÃÊÇûÓ줻î¶Ô»°×´Ì¬µÄ¡£ÎªÁ˶ÁÈ¡ºÍ/»òдÈë״̬Êý¾Ý£¬ÐèÒªHTTP´¦Àí³ÌÐòʵÏÖÏÂÃæµÄ½Ó¿ÚÖ®Ò»£º

¡¡¡¡· IRequiresSessionState

¡¡¡¡· IReadOnlySessionState.

¡¡¡¡µ±HTTP´¦Àí³ÌÐòÐèÒª¶Áд¶Ô»°Êý¾ÝµÄʱºò£¬Ëü±ØÐëʵÏÖIRequiresSessionState½Ó¿Ú¡£Èç¹ûËüÖ»¶ÁÈ¡¶Ô»°Êý¾Ý£¬ÊµÏÖIReadOnlySessionState½Ó¿Ú¾Í¿ÉÒÔÁË¡£

¡¡¡¡ÕâÁ½¸ö½Ó¿Ú¶¼ÊDZê¼Ç½Ó¿Ú£¬²¢Ã»Óаüº¬Èκη½·¨¡£Òò´Ë£¬Èç¹ûÄãÏ£Íû¼¤»îNewHandler´¦Àí³ÌÐòµÄ¶Ô»°×´Ì¬£¬ÒªÏñÏÂÃæµÄ´úÂëÒ»ÑùÉùÃ÷NewHandlerÀࣺ

public class NewHandler : IHttpHandler, IRequiresSessionState

¡¡¡¡HTTPÄ£¿é

¡¡¡¡HTTPÄ£¿éÊÇʵÏÖÁËSystem.Web.IhttpModule½Ó¿ÚµÄ.NET×é¼þ¡£ÕâЩ×é¼þͨ¹ýÔÚijЩʼþÖÐ×¢²á×ÔÉí£¬°Ñ×Ô¼º²åÈëASP.NETÇëÇó´¦Àí¹ÜµÀ¡£µ±ÕâЩʼþ·¢ÉúµÄʱºò£¬ASP.NETµ÷ÓöÔÇëÇóÓÐÐËȤµÄHTTPÄ£¿é£¬ÕâÑù¸ÃÄ£¿é¾ÍÄÜ´¦ÀíÇëÇóÁË¡£

¡¡¡¡HTTPÄ£¿éʵÏÖÁËIhttpModule½Ó¿ÚµÄÏÂÃæÒ»Ð©·½·¨£º

·½·¨Ãû³Æ ÃèÊö

Init Õâ¸ö·½·¨ÔÊÐíHTTPÄ£¿éÏòHttpApplication ¶ÔÏóÖеÄʼþ×¢²á×Ô¼ºµÄʼþ´¦Àí³ÌÐò¡£

Dispose Õâ¸ö·½·¨¸øÓèHTTPÄ£¿éÔÚ¶ÔÏó±»À¬»øÊÕ¼¯Ö®Ç°Ö´ÐÐÇåÀíµÄ»ú»á¡£

¡¡¡¡HTTPÄ£¿é¿ÉÒÔÏòSystem.Web.HttpApplication¶ÔÏó±©Â¶µÄÏÂÃæÒ»Ð©·½·¨×¢²á£º

ʼþÃû³Æ ÃèÊö

AcquireRequestState µ±ASP.NETÔËÐÐʱ׼±¸ºÃ½ÓÊÕµ±Ç°HTTPÇëÇóµÄ¶Ô»°×´Ì¬µÄʱºòÒý·¢Õâ¸öʼþ¡£

AuthenticateRequest µ±ASP.NET ÔËÐÐʱ׼±¸ÑéÖ¤Óû§Éí·ÝµÄʱºòÒý·¢Õâ¸öʼþ¡£

AuthorizeRequest µ±ASP.NETÔËÐÐʱ׼±¸ÊÚȨÓû§·ÃÎÊ×ÊÔ´µÄʱºòÒý·¢Õâ¸öʼþ¡£

BeginRequest µ±ASP.NETÔËÐÐʱ½ÓÊÕµ½ÐµÄHTTPÇëÇóµÄʱºòÒý·¢Õâ¸öʼþ¡£

Disposed µ±ASP.NETÍê³ÉHTTPÇëÇóµÄ´¦Àí¹ý³ÌʱÒý·¢Õâ¸öʼþ¡£

EndRequest °ÑÏìÓ¦ÄÚÈÝ·¢Ë͵½¿Í»§¶Ë֮ǰÒý·¢Õâ¸öʼþ¡£

Error ÔÚ´¦ÀíHTTPÇëÇóµÄ¹ý³ÌÖгöÏÖδ´¦ÀíÒì³£µÄʱºòÒý·¢Õâ¸öʼþ¡£

PostRequestHandlerExecute ÔÚHTTP´¦Àí³ÌÐò½áÊøÖ´ÐеÄʱºòÒý·¢Õâ¸öʼþ¡£

PreRequestHandlerExecute ÔÚASP.NET¿ªÊ¼Ö´ÐÐHTTPÇëÇóµÄ´¦Àí³ÌÐò֮ǰÒý·¢Õâ¸öʼþ¡£ÔÚÕâ¸öʼþÖ®ºó£¬ASP.NET °Ñ¸ÃÇëÇóת·¢¸øÊʵ±µÄHTTP´¦Àí³ÌÐò¡£

PreSendRequestContent ÔÚASP.NET°ÑÏìÓ¦ÄÚÈÝ·¢Ë͵½¿Í»§¶Ë֮ǰÒý·¢Õâ¸öʼþ¡£Õâ¸öʼþÔÊÐíÎÒÃÇÔÚÄÚÈݵ½´ï¿Í»§¶Ë֮ǰ¸Ä±äÏìÓ¦ÄÚÈÝ¡£ÎÒÃÇ¿ÉÒÔʹÓÃÕâ¸öʼþ¸øÒ³ÃæÊä³öÌí¼ÓÓÃÓÚËùÓÐÒ³ÃæµÄÄÚÈÝ¡£ÀýÈçͨÓò˵¥¡¢Í·ÐÅÏ¢»ò½ÅÐÅÏ¢¡£

PreSendRequestHeaders ÔÚASP.NET°ÑHTTPÏìӦͷÐÅÏ¢·¢Ë͸ø¿Í»§¶Ë֮ǰÒý·¢Õâ¸öʼþ¡£ÔÚÍ·ÐÅÏ¢µ½´ï¿Í»§¶Ë֮ǰ£¬Õâ¸öʼþÔÊÐíÎÒÃǸıäËüµÄÄÚÈÝ¡£ÎÒÃÇ¿ÉÒÔʹÓÃÕâ¸öʼþÔÚÍ·ÐÅÏ¢ÖÐÌí¼ÓcookieºÍ×Ô¶¨ÒåÊý¾Ý¡£

ReleaseRequestState µ±ASP.NET½áÊøËùËÑÓеÄÇëÇó´¦Àí³ÌÐòÖ´ÐеÄʱºòÒý·¢Õâ¸öʼþ¡£

ResolveRequestCache ÎÒÃÇÒý·¢Õâ¸öʼþÀ´¾ö¶¨ÊÇ·ñ¿ÉÒÔʹÓôÓÊä³ö»º³å·µ»ØµÄÄÚÈÝÀ´½áÊøÇëÇó¡£ÕâÒÀÀµÓÚWebÓ¦ÓóÌÐòµÄÊä³ö»º³åʱÔõÑùÉèÖõġ£

UpdateRequestCache µ±ASP.NETÍê³ÉÁ˵±Ç°µÄHTTPÇëÇóµÄ´¦Àí£¬²¢ÇÒÊä³öÄÚÈÝÒѾ­×¼±¸ºÃÌí¼Ó¸øÊä³ö»º³åµÄʱºò£¬Òý·¢Õâ¸öʼþ¡£ÕâÒÀÀµÓÚWebÓ¦ÓóÌÐòµÄÊä³ö»º³åÊÇÈçºÎÉèÖõġ£

×öÈËÒªºñµÀ£¬Çë×¢Ã÷ת×Ô¿áÍø¶¯Á¦(www.ASPCOOL.COM)¡£

ÔðÈα༭£ºadmin
±¾ÎÄÒýÓõØÖ·£º http://www.3pcode.com/net/2007/10/91348.htm
Ïà¹ØÎÄÕÂ