HTTPÇÁ·ÎÅäÄÝÀÇ ¸Þ½ÃÁö´Â Å©°Ô 3ºÎºÐÀ¸·Î ³ª´©¾î »ý°¢ ÇØ º¼ ¼ö ÀÖ½À´Ï´Ù. Request ¿äû ¶óÀΰú Header ºÎºÐ ±×¸®°í ¸öü ºÎºÐÀ¸·Î ³ª´©¾î »ý°¢ÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.
HTTP ÇÁ·ÎÅäÄÝÀÇ ¸Þ½ÃÁö ±¸ºÐ
n Request ¿äû ¶óÀÎ
n Header ºÎºÐ
n Entity Body
ÀÌ Àý¿¡¼´Â HeaderºÎºÐ¿¡ Á¸ÀçÇÏ´Â Header Namer°ú Header Value¸¦ ÃßÃâÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼ ¾Ë¾Æ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ¾Æ·¡ÀÇ ±×¸²Àº HTTP ÇÁ·ÎÅäÄÝÀÇ ¸Þ½ÃÁö¸¦ ±¸Á¶ÀûÀ¸·Î ºÐ¼®ÇÑ ±×¸²ÀÌ´Ï Çѹø °ËÅäÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù.

HTTP RequestÀÇ ¸Þ½ÃÁö ÇüÅ´ ¸Þ½ÃÁö ¿äû¶óÀο¡¼ 3°¡Áö¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
HTTP RequestÀÇ ¸Þ½ÃÁö ÇüÅ´ ¸Þ½ÃÁö ¿äû¶óÀο¡¼
n method
n URL
n version
°¢°¢Àº space·Î ³ª´µ¾îÁ® ÀÖÀ¸¸ç Á¦ÀÏ ¸¶Áö¸·¿¡´Â carriage return(¡¬r)°ú line feed(¡¬n)¸¦ ÷ºÎÇϰí ÀÖ½À´Ï´Ù.
¿äû¶óÀÎ ºÎºÐÀÇ ¿¹
n GET /servlet/chap4.HeaderNames HTTP/1.1
±×¸®°í ¸öü ºÎºÐÀº ¿©·¯ ÁÙÀÇ ¡°Header field name : value¡± Çü½ÄÀ¸·Î µÇ¾î ÀÖ½À´Ï´Ù. ±¸ºÐÀÚ´Â ¡®:¡¯À» »ç¿ëÇϰí ÀÖÀ¸¸ç ¸¶Áö¸·¿¡´Â ¿äû¶óÀΰú ¸¶Âù°¡Áö·Î carriage return(¡¬r)°ú line feed(¡¬n)¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
¸öüºÎºÐÀÇ ¿¹
n accept:*/*
n accept-language:ko
n accept-encoding:gzip, deflate
n host:localhost:8080
À§ÀÇ ±×¸²¿¡ Á¸ÀçÇÏ´Â Çì´õ À̿ܿ¡µµ ¿©·¯°¡Áö Çì´õµéÀÌ Á¸ÀçÇÕ´Ï´Ù. ¸î¸î Çì´õÀÇ À̸§ÀÇ ¸ñ·ÏÀº ´ÙÀ½°ú °°½À´Ï´Ù.
n Accept, Accep-Charset, Accept-Encoding, Accept-Lanaguage, Authorization, Chache-Control, Connection, Content-Type, Cookie, Expect, From, Host, If-Match, If-Modified-Since, If-None-Match, If-Range, If-Unmodified-Since, Pragma, Proxy-Authorization, Range, Referer, Upgrade, User-Agent, Via, Warning
¸ðµç Çì´õ À̸§µéÀ» ÀüºÎ »ç¿ëÇÏÁö´Â ¾Ê½À´Ï´Ù. ´ÜÁö ÇÊ¿äÇÏ´Ù°í »ý°¢µÇ´Â °Í°ú »ç¿ëÀÚ°¡ Á÷Á¢ ¼ÂÆÃÇØ ÁÖ´Â Çì´õµé¸¸À» »ç¿ëÇÏ°Ô µË´Ï´Ù. Çì´õ¸¦ ÃßÃâÇÏ´Â ¿¹Á¦¸¦ Çϳª ´Ù·ç¾î º¸µµ·Ï ÇϰڽÀ´Ï´Ù. Çì´õ¸¦ ÃßÃâÇϱâ À§Çؼ´Â getHeaderNames()¸Þ¼µå¸¦ ÀÌ¿ëÇÏ¿© Çì´õ¿¡ Á¸ÀçÇÏ´Â À̸§À» ÀüºÎ ÃßÃâÇÏ¿© getHeader()¸Þ¼µå¸¦ ÀÌ¿ëÇÏ¿© Çì´õ °ªµéÀ» ÃßÃâÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù.
|
HeaderNames.java |
Header¿¡ Æ÷ÇÔ µÇ¾îÁø Á¤º¸¸¦ Ãâ·ÂÇÏ´Â ¿¹ |
|
| |
|
C:\jakarta\webapps\MySample\WEB-INF\classes\chap4>javac HeaderNames.java
| |
Çì´õÀÇ ¸ðµç Header NameÀ» ÃßÃâÇϱâ À§Çؼ ´ÙÀ½°ú °°Àº ±¸¹®À» »ç¿ëÇÕ´Ï´Ù.
n Enumeration enum = request.getHeaderNames();
Çì´õÀÇ À̸§À» EnumerationÀ¸·Î ¹Þ¾Æ ³»¾î ·çÇÁ¸¦ µ¹¸é¼ ±× °ªÀ» ÃßÃâÇÏ´Â ºÎºÐÀº ¾Æ·¡¿Í °°½À´Ï´Ù.
n while(enum.hasMoreElements()){
n String name = (String)enum.nextElement();
n String value = request.getHeader(name);
n out.println( "<b>"+name+"</b>"+":"+value +"<br>");
n }
°ªÀ» ÃßÃâÇÒ ¶§ »ç¿ëÇÏ´Â ¸Þ¼µå´Â getHeader(name)¸Þ¼µå¸¦ »ç¿ëÇϰí ÀÖ½À´Ï´Ù.
| jabookÀúÀÚ¸íÇÔ |
|
Á¦¸ñ:¼Ò¼³°°ÀºJSP1ºÎ ÀúÀÚ:ÃÖ¿µ°ü |