ACTIVE SERVER PAGE > Request ³»Àå °´Ã¼ µî·ÏÀÏ : 2017-07-04 11:50 Á¶È¸¼ö : 55,010¾È³çÇϼ¼¿ä ¾È±Ô¶ø´Ï´Ù.
¿©·¯ºÐÀº ¾Æ¸¶ ASP¸¦ óÀ½ ½ÃÀÛÇϸ鼺ÎÅÍ °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â °´Ã¼Áß Çϳª°¡ ¹Ù·Î ÀÌ Request °´Ã¼ÀÏ °ÍÀÔ´Ï´Ù. ±×¸¸Å ¸¹ÀÌ »ç¿ëÇÏ°í Àͼ÷ÇÏ´Ù´Â ¶æÀÌ°ÚÁö¿ä. ÀÌ ÆäÀÌÁö¿¡¼´Â Request°¡ ¾î¶²ÀÏÀ» ÇÏ´ÂÁö... Á¤¸®¸¦ ÇÏ°í,,,, ¾î¶°ÇÑ ±â´ÉÀ» Á¦°øÇØ ÁÖ´ÂÁö¸¦ Á¤¸®ÇØ º¼±î ÇÕ´Ï´Ù. »ó´çºÎºÐ ¾Ë°í °è½Ã°ÚÁö¸¸, ±×·¡µµ ¿ì¸®°¡ »ý°¢ÇÏ´Â Á¤º¸ÀÌ»óÀ» Á¦°øÇØ ÁÖ´Â °´Ã¼ÀÌ´Ï, Á¤¸®ÇØ ³õÀ¸¸é °³¹ßÇϴµ¥, ¸¹Àº µµ¿òÀÌ µÉ°Í °°³×¿ä.. Request °´Ã¼´Â ½ÎÀÌÆ®³ª ¾ÖÇø®ÄÉÀ̼ǿ¡ Àü¼ÛµÇ´Â »ç¿ëÀÚÀÇ ¿äû¿¡ ´ëÇÑ ¸ðµç Á¤º¸¸¦ Á¦°øÇÏ´Â °´Ã¼ÀÔ´Ï´Ù. Request °´Ã¼´Â ¾Æ·¡ Ç¥¿Í °°ÀÌ ´Ù¼¸°³ÀÇ º¯¼ö Ä÷º¼Ç,ÇÁ·ÎÆÛƼ,¸Þ½îµåµîÀ» Á¦°øÇÕ´Ï´Ù.
10.2.1. QueryString Ä÷º¼Ç Form Ä÷º¼Ç°ú ÇÔ²² °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â Ä÷º¼Ç Áß¿¡ ÇϳªÀÔ´Ï´Ù. »ç¿ëÀÚ°¡ ¼¹ö¿¡ Á¤º¸¸¦ Àü´ÞÇÏ´Â ¹æ¹ýÀº µÎ°¡Áö·Î ³ª´¼ö ÀÖ½À´Ï´Ù. ù¹ø° ¹æ¹ýÀº <Form> ¼½¼ÇÀ» ÅëÇØ Àü´ÞÇÏ´Â ¹æ¹ýÀÌ°í, µÎ¹ø°·Î´Â URL³¡¿¡ ÁúÀÇ ¹®ÀÚ¿·Î Á÷Á¢ Ãß°¡µÇ¾î Àü´ÞµÇ¾î Áö´Â ¹æ¹ýÀÔ´Ï´Ù.
À§ÀÇ ¿¹Á¦ ¼Ò½º¸¦ º¸½Ã¸é ¾Æ½Ã°ÚÁö¸¸ test.html ÆÄÀÏ¿¡¼ test.asp·Î ÆäÀÌÁö°¡ ³Ñ¾î°¥¶§, ºê¶ó¿ìÁ® Address ¹Ú½º¿£ ´ÙÀ½Ã³·³ º¸¿© Áú°ÍÀÔ´Ï´Ù. http://localhost/test.asp?id=xxx&pass=xxxx ¿ì¸®°¡ redirect ³ª a ű×ÀÇ HREF ¾îÆ®¸®ºäÆ®¿¡ Ç¥½ÃµÈ URL¿¡ ÁúÀÇ ¹®ÀÚ¿À» µ¡ºÙ¿©µµ ¶È°°Àº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹Á¦´Â URL ¿¡ ÁúÀÇ ¹®ÀÚ¿·Î Á÷Á¢ Àü´ÞµÇ¾îÁö´Â ¹æ¹ýÀ» º¸¾Ò±¸¿ä, ÀÌ°É º¸Åë GET ¹æ½ÄÀ̶ó°í ÇÕ´Ï´Ù. <form> ¼½¼ÇÀÇ method ¾îÆ®¸®ºäÆ® °ªÀÌ "GET" À̱⠶§¹®ÀÌÁö¿ä. ÀÌ°É post ·Î ¹Ù²Ù¸é QueryString ´ë½Å¿¡ Request.Form() À̶ó°í °íÄ¡¸é µÈ´ä´Ï´Ù. ÀÌ ÁúÀÇ ¹®ÀÚ¿ ¹æ¹ýÀº ÇϳªÀÇ ½É°¢ÇÑ ÇѰ踦 Áö´Ï°í Àִµ¥¿ä. http ÇÁ·ÎÅäÄÝ »ç¾ç¿¡ ÀÇÇϸé URL°ú °°ÀÌ ¼Û½ÅµÉ¼ö ÀÖ´Â µ¥ÀÌÅÍ´Â ´ë·« 1000ÀÚ ³»¿Ü·Î ÇÑÁ¤µÇ¾î ÀÖ´Ù°í ÇÕ´Ï´Ù. Áï, ¸¹Àº µ¥ÀÌÅ͸¦ Àü¼ÛÇÏ°Ô µÇ¸é ÀϺε¥ÀÌÅÍ°¡ À߸®°Ô µÉ¼öµµ ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù. À̸¦ º¸¾ÈÇÑ°Ô POST ¸Þ¼Òµå¸¦ ÅëÇÑ µ¥ÀÌÅÍ Àü¼ÛÀÔ´Ï´Ù. Ä÷º¼ÇÀº ¹è¿°ú °°ÀÌ Æ¯Á¤ °ªÀ» ½±°Ô »©¿Ã¼ö Àִ Ư¡À» °¡Áö°í ÀÖ½À´Ï´Ù. ±×·¯³ª, ¹è¿°ú ´Ù¸¥Á¡Àº Ubound ¿Í °°Àº ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ Å©°¡ °°Àº °É °¡Áö°í ¿Ã¼ö ¾ø½À´Ï´Ù. Áï, For ... Next ±¸¹®À¸·Î´Â Ä÷º¼ÇÀÇ ¸ðµç °ª¿¡ °ÉÃÄ ¹Ýº¹Ã³¸®°¡ ³°¨ÇÕ´Ï´Ù. À̸¦ À§ÇØ ³ª¿Â ·çÇÁ¹®ÀÌ For...Each ¹®ÀÔ´Ï´Ù. ¾Æ·¡Ç¥´Â For ... Each ¹®ÀÇ °£´ÜÇÑ »ç¿ë¹ýÀÔ´Ï´Ù.
10.2.2. Form Ä÷º¼Ç Form Ä÷º¼ÇÀº QueryString Ä÷º¼Ç°ú ºñ½ÁÇϱ⠶§¹®¿¡ »ó¼¼ÇÑ ¼³¸íÀº Á¢±â·Î ÇÏ°Ú½À´Ï´Ù. FOM ¸Þ¼Òµå¸¦ ÅëÇØ Àü¼ÛÀ» ½ÃÅ°°Ô µÇ¸é HTTP Çì´õ¿¡ »ç¿ëÀÚÀÇ Àü¼Ûµ¥ÀÌÅ͸¦ Æ÷ÇÔ½ÃÅ°°Ô µË´Ï´Ù. ¿©±â¿¡¼ Á¦°¡ ´Ù·ç°í ½ÍÀº ºÎºÐÀº <FORM> ¼½¼ÇÀÇ ÄÁÆ®·Ñ ±×·ìÀ» ´Ù·ç´Â °É ¿¹Á¦·Î Çغ¸µµ·Ï ÇÏ°Ú½À´Ï´Ù.
À§ÀÇ ±×¸²°ú Å×À̺íÀÇ ¼Ò½º¸¦ º¸¸é ¾Æ½Ã°ÚÁö¸¸, Checkbox´Â °°Àº °³Ã¼´Â Name ¾îÆ®¸®ºäÆ®¿Í ¼·Î ´Ù¸¥ value °ªÀ» °¡Áö°í ÀÖ½À´Ï´Ù. À§¿Í °°Àº °°Àº ±×·ìÀÇ Form űװ¡ ±¸¸¨ ÇüÅ·Π³Ñ¾î ¿Â´Ù¸é ¾î¶²½ÄÀ¸·Î »ç¿ëÇØ¾ß Çұ? ÀÌ·±°æ¿ì´Â Count ÇÁ·ÎÅÍƼ¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. ±×¸®±¸, Rquest °´Ã¼´Â ¹è¿°ú °°Àº ¼Ó¼ºÀ» ÇÏÁö°í Àֱ⠶§¹®¿¡ À妽º¸¦ »ç¿ëÇÒ¼ö °¡ ÀÖ½À´Ï´Ù. ÀÏ´Ü ³Ñ¾î¿Â name ÀÇ °¹¼ö¸¦ ¾Ë°í ½Í´Ù¸é, Request.form("ra").count ¿Í °°Àº count ÇÁ·ÎÆÛƼ¸¦ »ç¿ëÇÏ¸é µË´Ï´Ù. ±×¸®±¸, Request.Form("ra")(i) ´Â raÀÇ i¹ø° value¸¦ »Ì¾Æ ¿Ã¼ö ÀÖ´Â °Ì´Ï´Ù. ¾Æ·¡±×¸²Àº ½ÇÇàȸé ÀÔ´Ï´Ù. 10.2.3. ServerVariables Ä÷º¼Ç À̸§À¸·Î ºÁ¼´Â Ŭ¶óÀ̾ðÆ® ¿äû°ú º° »ó°üÀÌ ¾ø¾î º¸ÀÌÁö¸¸, ½ÇÀº ´Ù¸¥ Ä÷º¼Ç¿¡¼ º¸°Ô µÇ´Â ´ëºÎºÐÀÇ Á¤º¸µéÀÌ ServerVariables Ä÷º¼ÇÀ¸·ÎºÎÅÍ ¾ò¾îÁö°í ÀÖ½À´Ï´Ù. »ç¿ë¹æ¹ýÀº Request.ServerVariables("REQUEST_METHOD") ¿Í °°Àº Çü½ÄÀ¸·Î »ç¿ëµÉ¼ö ÀÖ½À´Ï´Ù. ÀÏ´Ü Servervariables Ä÷º¼ÇÀÇ Çì´õ¿¡´Â ¾î¶°ÇÑ °ÍµéÀÌ ÀÖ´ÂÁö¸¦ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù. À§¿¡¼ ÇØ º¸¾Ò´ø For...Each ¹®À» ÀÌ¿ëÇÏ¿©, Á¤º¸¸¦ »Ì¾Æº¼¼ö ÀÖ½À´Ï´Ù.
À§¿Í °°Àº Á¤½ÄÀ¸·Î Çì´õ¸¦ »Ì¾Æ º¼¼ö ÀÖ½À´Ï´Ù. ¾Æ·¡ Ç¥´Â °á°ú °ªÀ» º¸¿© ÁÝ´Ï´Ù.
10.2.4. Cookies Ä÷º¼Ç QueryString , Form Ä÷º¼ÇÀº ¿ÀÁ÷ ´ÜÀÏÀÇ ºê¶ó¿ìÀú ¿äû¾È¿¡¼¸¸ ÀÌ¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. Áï, ¸Å¹ø »ç¿ëÀÚ°¡ ¼¹ö·ÎºÎÅÍ ÆÄÀÏÀ» ¿ä±¸ÇÒ¶§¸¶´Ù ÇÊ¿äÇÏ°í, ¿ä±¸·ÎºÎÅÍ Á¤º¸°¡ ¾÷µ¥ÀÌÆ® µË´Ï´Ù. º¸´Ù Áö¼ÓÀûÀ¸·Î µ¥ÀÌÅ͸¦ º¸Á¸ÇÏ°í »ç¿ëÇϱâ À§Çؼ ¸¸µç°Ô ¹Ù·Î CookieÀÇ °³³ä ÀÔ´Ï´Ù. ÄíÅ°ÀÇ Á¤º¸¸¦ ¹Ù²Ù±â À§Çؼ´Â Response °´Ã¼¸¦ ÀÌ¿ëÇÏ¸é µË´Ï´Ù. Cookies Ä÷º¼Ç ³»ÀÇ ±¸¼º¿øµéÀÇ ¸®½ºÆ®¸¦ º¸°íÀÚ ÇÑ´Ù¸é ¾Æ·¡Ã³·³ for..Each À» ÅëÇØ ¾ò¾îº¼¼ö ÀÖ½À´Ï´Ù. <% for Each Item in Request.Cookies response.write "Cookie:"& Item &"="&Request.Cookies(Item)&"<BR>" next %> 10.2.5. totalbytes ÇÁ·ÎÆÛƼ, BinaryRead(count) ¸Þ¼µå Ŭ¶óÀ̾ðÆ®·ÎºÎÅÍ Á¤º¸¸¦ ¾ò¾î¿À±â À§Çؼ´Â BinaryRead¸¦ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. <% bytecount=Request.TotalBytes binRead=Request.BinaryRead(bytecount) response.write bytecount&"<Br>" response.write binRead %> À§ÀÇ ¿¹Á¦´Â Ŭ¶óÀ̾ðÆ®°¡ ¼¹ö¿¡ ¿äûÇÑ ÃÑ ¹ÙÀÌÆ®¼ö(TotalBytes) ¿Í BinaryRead¸¦ ±¸ÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù. BinaryRead ¸¦ »ç¿ëÇϸé ÆÄÀÏ ¾÷·Îµå¿Í °°Àº ¼¹ö·Î Àü¼ÛµÇ´Â ÀÌÁø µ¥ÀÌÅ͸¦ Àдµ¥ »ç¿ëµÉ¼ö ÀÖ½À´Ï´Ù. Request.ServerVariables("REMOTE_ADDR") ¸¦ ÅëÇؼ ±âº»ÀûÀ¸·Î ¿äû Ŭ¶óÀ̾ðÆ®ÀÇ IP ¸¦ ¾ò¾î¿Ã ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ÇØ´ç ¼¹ö°¡ proxy ¼¹ö¸¦ ÅëÇؼ Àü´ÞÀÌ µÈ °æ¿ì REMOTE_ADDR ´Â proxy ¼¹öÀÇ IP °¡ µé¾î°¡°Ô µÈ´Ù. ÀÌ·¯ÇÑ °æ¿ì ½ÇÁ¦ IP ¸¦ ¾ò±â À§Çؼ´Â http Çì´õ¿¡ "X-Forwarded-For" ¸¦ ÅëÇؼ IP ¸¦ ¾ò¾î¿Ã ¼ö ÀÖ´Ù. Request.ServerVariables("HTTP_X_FORWARDED_FOR")
|