HTTP ã®æ¦è¦
HTTP ã¯ã HTML ææ¸ãªã©ã®ãªã½ã¼ã¹ãèªã¿åãããã®ãããã³ã«ã§ãã ããã¯ã¦ã§ãã«ããããã¼ã¿äº¤æã®åºç¤ããªããã¯ã©ã¤ã¢ã³ããµã¼ãã¼ãããã³ã«ã§ããããªã¯ã¨ã¹ãã¯åãåãè ï¼ä¸è¬ã«ã¯ã¦ã§ããã©ã¦ã¶ã¼ï¼ãçæãã¾ãã ææ¸å ¨ä½ã¯ãããã¹ãã³ã³ãã³ããã¬ã¤ã¢ã¦ãæç¤ºãç»åãåç»ãã¹ã¯ãªãããªã©ã®ãªã½ã¼ã¹ããæ§æããã¾ãã
ã¯ã©ã¤ã¢ã³ãã¨ãµã¼ãã¼ã¯ãï¼ãã¼ã¿ã®æµãã¨ã¯å¯¾ç §çã«ï¼åã ã®ã¡ãã»ã¼ã¸ã交æãããã¨ã«ãã£ã¦éä¿¡ãã¾ãã ã¯ã©ã¤ã¢ã³ãï¼é常ã¯ã¦ã§ããã©ã¦ã¶ã¼ï¼ãéä¿¡ããã¡ãã»ã¼ã¸ã¯ãªã¯ã¨ã¹ãã¨å¼ã°ãã¾ããã¾ãããµã¼ãã¼ãåçã¨ãã¦éä¿¡ããã¡ãã»ã¼ã¸ã¯ã¬ã¹ãã³ã¹ã¨å¼ã°ãã¾ãã
1990 年代åé ã«è¨è¨ããã HTTP ã¯ãæéãããã¦é²åããæ¡å¼µå¯è½ãªãããã³ã«ã§ãã HTTP ã¯ã TCP ã¾ã㯠TLS ï¼æå·åããã TCP æ¥ç¶ï¼ã使ç¨ãã¦éä¿¡ãããã¢ããªã±ã¼ã·ã§ã³å±¤ã®ãããã³ã«ã§ãããçè«ä¸ã¯ä¿¡é ¼æ§ã®ããä»»æã®ãã©ã³ã¹ãã¼ã層ãããã³ã«ã使ç¨ã§ãã¾ãã HTTP ã¯æ¡å¼µæ§ãããããããã¤ãã¼ããã¹ãææ¸ã ãã§ãªãç»åãåç»ã®åãè¾¼ã¿ãã HTML ãã©ã¼ã ã®å ¥åçµæãªã©ãã¯ã©ã¤ã¢ã³ããããµã¼ãã¼ã¸éä¿¡ãããã¨ãã§ãã¾ãã ã¾ãããªã¯ã¨ã¹ãã«å¿ãã¦ã¦ã§ããã¼ã¸ãæ´æ°ããããã«ãææ¸ã®ä¸é¨ãåãè¾¼ããã¨ãã§ãã¾ãã
HTTP ãã¼ã¹ã·ã¹ãã ã®æ§æè¦ç´
HTTP ã¯ã¯ã©ã¤ã¢ã³ããµã¼ãã¼ãããã³ã«ã§ããããªã¯ã¨ã¹ãã¯ã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãï¼ã¾ãã¯ä»£çã®ãããã·ã¼ï¼ã¨ããã²ã¨ã¤ã®å®ä½ããéä¿¡ããã¾ãã ã»ã¨ãã©ã®å ´åãã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãã¯ã¦ã§ããã©ã¦ã¶ã¼ã§ãããä¾ãã°æ¤ç´¢ã¨ã³ã¸ã³ã®ã¤ã³ããã¯ã¹ãåéããã³ä¿å®ããããã«ã¦ã§ããã¯ãã¼ã«ãããããããªã©ãã©ãã§ãã¯ã©ã¤ã¢ã³ãã«ãªããã¨ãã§ãã¾ãã
åã ã®ãªã¯ã¨ã¹ãã¯ãµã¼ãã¼ã«éä¿¡ãããå¦çããå¾ã«ã¬ã¹ãã³ã¹ã¨å¼ã°ããåçãæä¾ãã¾ãã ã¯ã©ã¤ã¢ã³ãã¨ãµã¼ãã¼ã¨ã®éã«ã¯ãä¾ãã°ã²ã¼ãã¦ã§ã¤ããã£ãã·ã¥ãªã©ã®æ§ã ãªæä½ãè¡ããã¾ã¨ãã¦ãããã·ã¼ãµã¼ãã¼ã¨å¼ã°ããããã¤ãã®å®ä½ãåå¨ãã¦ãã¾ãã
å®éã¯ãã©ã¦ã¶ã¼ã¨ãµã¼ãã¼ã®éã«ãã«ã¼ã¿ã¼ãã¢ãã ãªã©ãªã¯ã¨ã¹ããæ±ãã³ã³ãã¥ã¼ã¿ã¼ãããã«åå¨ãã¾ãã ã¦ã§ããé層æ§é ã§è¨è¨ããããããã§ããããã¯ãããã¯ã¼ã¯ããã©ã³ã¹ãã¼ã層ã®ä¸ã«é ããã¦ãã¾ãã HTTP ã¯ã¢ããªã±ã¼ã·ã§ã³å±¤ã®æä¸ä½ã«åå¨ãã¾ãã ãããã¯ã¼ã¯ã®åé¡ã診æãããã¨ã¯éè¦ã§ããã HTTP ã説æããéã«ä¸å±¤ã®ãã¨ã¯ã»ã¨ãã©éè¦ã§ã¯ããã¾ããã
ã¯ã©ã¤ã¢ã³ã: ã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ã
ã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãã¯ãã¦ã¼ã¶ã¼ã®ããã«åããã¼ã«ã§ãã ãã®å½¹å²ã¯ä¸»ã«ãã¦ã§ããã©ã¦ã¶ã¼ãæ ãã¾ãããã¨ã³ã¸ãã¢ãã¦ã§ãéçºè ãã¢ããªã±ã¼ã·ã§ã³ããããã°ããããã«ä½¿ç¨ããããã°ã©ã ã§ããå¯è½æ§ãããã¾ãã
ãã©ã¦ã¶ã¼ã¯å¸¸ã«ããªã¯ã¨ã¹ããçæããå®ä½ã§ãã ãµã¼ãã¼ã«ã¯ãªãã¾ããï¼ãã£ã¨ãããµã¼ãã¼ãçæããã¡ãã»ã¼ã¸ãã·ãã¥ã¬ã¼ãããä»çµã¿ãè¿å¹´è¿½å ããã¾ãããï¼ã
ã¦ã§ããã¼ã¸ã表示ããããããã©ã¦ã¶ã¼ã¯ãã¼ã¸ã表ã HTML ææ¸ãèªã¿è¾¼ãããã®æåã®ãªã¯ã¨ã¹ããéä¿¡ãã¾ãã ãã®ãã¡ã¤ã«ãè§£æãã¦ãå®è¡ããã¹ã¯ãªããã表示ããã¬ã¤ã¢ã¦ãã®æ å ± (CSS)ããã¼ã¸ã«å«ã¾ãããµããªã½ã¼ã¹ï¼é常ãç»åãåç»ï¼ã«å¯¾å¿ãã追å ã®ãªã¯ã¨ã¹ããçºè¡ãã¾ãã ããã¦ãã¦ã§ããã©ã¦ã¶ã¼ã¯ãããã®ãªã½ã¼ã¹ãçµã¿åããã¦ãå®å ¨ãªææ¸ã§ããã¦ã§ããã¼ã¸ãæä¾ãã¾ãã ãã©ã¦ã¶ã¼ã«ãã£ã¦å®è¡ãããã¹ã¯ãªãããå¾ã®æ®µéã§ããã«ãªã½ã¼ã¹ãåãè¾¼ãã§ãããã«å¿ãã¦ãã©ã¦ã¶ã¼ãã¦ã§ããã¼ã¸ãæ´æ°ãããã¨ãããã¾ãã
ã¦ã§ããã¼ã¸ã¯ããã¤ãã¼ããã¹ãææ¸ã§ãã ããã¯è¡¨ç¤ºããã¦ããã³ã³ãã³ãã®ä¸é¨ãæ°ããªã¦ã§ããã¼ã¸ã®åãè¾¼ã¿ãï¼é常ããã¦ã¹ã®ã¯ãªãã¯ã«ãã£ã¦ï¼çºçããããªã³ã¯ã§ãããã¦ã¼ã¶ã¼ãã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ããå°ãã¦ã¦ã§ãå ãç§»åã§ããã¨ãããã¨ã§ãã ãã©ã¦ã¶ã¼ã¯ãããã®å°ãã HTTP ãªã¯ã¨ã¹ãã«å¤æãã¦ãããã«ã¦ã¼ã¶ã¼ã¸æç¢ºãªã¬ã¹ãã³ã¹ãè¿ãããã« HTTP ã¬ã¹ãã³ã¹ãè§£éãã¾ãã
ã¦ã§ããµã¼ãã¼
éä¿¡è·¯ã®å対å´ã¯ãã¯ã©ã¤ã¢ã³ãã®ãªã¯ã¨ã¹ãã«å¿ãã¦ææ¸ãæä¾ãããµã¼ãã¼ããã¾ãã ãµã¼ãã¼ã¯ãä»®æ³çã«ã¯ 1 å°ã ãã®ãã·ã³ã¨ãã¦ããè¦ãã¾ããããå®éã«ã¯è² è·ãåæ ããï¼ãã¼ããã©ã³ã·ã³ã°ï¼ãµã¼ãã¼ã®éåã§ãã£ãããä»ã«ãï¼ãã£ãã·ã¥ããã¼ã¿ãã¼ã¹ãµã¼ãã¼ãé»åååå¼ãµã¼ãã¼ãªã©ï¼ãè¦æ±ã«å¿ãã¦ææ¸ãå ¨ä½çã¾ãã¯é¨åçã«çæããã½ããã¦ã§ã¢ã§ãã£ãããã¾ãã
ãµã¼ãã¼ã¯ 1 å°ã®ãã·ã³ã§ããå¿
è¦æ§ã¯ããã¾ããããè¤æ°ã®ãµã¼ãã¼ã®ã½ããã¦ã§ã¢ã¤ã³ã¹ã¿ã³ã¹ãåããã·ã³ã§éç¨ãããã¨ãã§ãã¾ãã
HTTP/1.1 㨠Host ãããã¼ã«ãã£ã¦ãåã IP ã¢ãã¬ã¹ãå
±æã§ãã¾ãã
ãããã·ã¼
ã¦ã§ããã©ã¦ã¶ã¼ã¨ã¦ã§ããµã¼ãã¼ã®éã§ã¯ã夿°ã®ã³ã³ãã¥ã¼ã¿ã¼ã端æ«ã HTTP ã¡ãã»ã¼ã¸ãä¸ç¶ãã¾ãã ã¦ã§ãã¹ã¿ãã¯ã¯é層æ§é ã§ããããããããã®å¦çã®ã»ã¨ãã©ã¯ãã©ã³ã¹ãã¼ã層ããããã¯ã¼ã¯å±¤ãç©ç層ã®ããããã§è¡ããã HTTP 層ããè¦ãã°ééçã§ãããããã©ã¼ãã³ã¹ã«ããªãã®å½±é¿ãä¸ãã¾ãã ã¢ããªã±ã¼ã·ã§ã³å±¤ã§è¡ãããå¦çã¯ãé常ãããã·ã¼ã¨å¼ã°ãã¾ãã ãããã¯ééçã§ããå ´åãããªãã¡åä¿¡ãããªã¯ã¨ã¹ãããããªãå ´åã夿´ããã«è»¢éããå ´åã¨ãééçã§ã¯ãªãå ´åãããªãã¡ãµã¼ãã¼ãééããåã«ä½ããã®å½¢ã§ãªã¯ã¨ã¹ãã夿´ããå ´åã¨ãããã¾ãã ãããã·ã¼ã¯ãã¾ãã¾ãªæ©è½ãå®è¡ãããã¨ãããã¾ãã
- ãã£ãã·ã¥ï¼ãã£ãã·ã¥ã¯å ±ç¨ããããã¯ãã©ã¦ã¶ã¼ãã£ãã·ã¥ã®ããã«å人ç¨ã«ã§ãã¾ãï¼
- ãã£ã«ã¿ãªã³ã°ï¼ã¢ã³ãã¦ã£ã«ã¹ã¹ãã£ã³ããã¢ã¬ã³ã¿ã«ã³ã³ããã¼ã«ãªã©ï¼
- è² è·åæ£ï¼è¤æ°ã®ãµã¼ãã¼ãå¥ã ã®ãªã¯ã¨ã¹ãã«å¯¾å¿ã§ããããã«ããï¼
- èªè¨¼ï¼ãã¾ãã¾ãªãªã½ã¼ã¹ã¸ã®ã¢ã¯ã»ã¹ãå¶å¾¡ããï¼
- ãã°è¨é²ï¼å±¥æ´æ å ±ã®ä¿ç®¡ãå¯è½ã«ããï¼
HTTP ã®åºæ¬æ¹é
>HTTP ã¯ã·ã³ãã«
HTTP/2 ã§ HTTP ã¡ãã»ã¼ã¸ããã¬ã¼ã ã«ã«ãã»ã«åãããã¨ã«ããè¤éããå¢ãã¾ãããã HTTP ã¯å ¨ä½çã«äººéãèªããããã«è¨è¨ããã¦ãã¾ãã HTTP ã¡ãã»ã¼ã¸ã¯äººéãèªãã§çè§£ãããã¨ãã§ããéçºè ã«ãããã¹ãã容æã«ãã¦ãã¾ããã¾ããåå¿è ã«å¯¾ããè¤éãã軽æ¸ãã¾ãã
HTTP ã¯æ¡å¼µå¯è½
HTTP/1.0 ã§å°å ¥ããã HTTP ãããã¼ã«ãã£ã¦ããããã³ã«ã®æ¡å¼µãå®é¨ã容æã«ãªã£ã¦ãã¾ãã æ°ããæ©è½ã§ãã£ã¦ããã¯ã©ã¤ã¢ã³ãã¨ãµã¼ãã¼ãæ°ããªãããã¼ã®æå³ã«ã¤ãã¦åæãããã°å°å ¥ã§ãã¾ãã
HTTP ã¯ã¹ãã¼ãã¬ã¹ã§ãããã»ãã·ã§ã³ã¬ã¹ã§ã¯ãªã
HTTP ã¯ã¹ãã¼ãã¬ã¹ã§ããåãã³ãã¯ã·ã§ã³ä¸ã§ãã£ã¦ããé£ç¶çã«å®è¡ããã 2 ã¤ã®ãªã¯ã¨ã¹ãéã«é¢ä¿æ§ã¯ããã¾ããã ããã¯é»åååå¼ã®ã·ã§ããã³ã°ãã¹ã±ãããªã©ã®ããã«ãã¦ã¼ã¶ã¼ãä¸è²«ããæ¹æ³ã§ç¹å®ã®ãã¼ã¸ã¨å¯¾è©±ãããã¨ãã«ç´æ¥åé¡ã«ãªãã¾ãã ããã HTTP ã®æ ¸å¿ãã¹ãã¼ãã¬ã¹ã§ãã£ã¦ãã HTTP Cookie ã«ãã£ã¦ã¹ãã¼ããã«ãªã»ãã·ã§ã³ãå®ç¾ã§ãã¾ãã ãããã¼ã®æ¡å¼µæ§ãå©ç¨ãã¦ãã¯ã¼ã¯ããã¼ã« HTTP Cookie ã追å ãããã°ãããããã® HTTP ãªã¯ã¨ã¹ããåãç¶æ³ãåãç¶æ ãå ±æããããã«ã»ãã·ã§ã³ã使ã§ããããã«ãªãã¾ãã
HTTP ã¨ã³ãã¯ã·ã§ã³
ã³ãã¯ã·ã§ã³ã¯ãã©ã³ã¹ãã¼ã層ã§å¶å¾¡ããã¾ãã®ã§ã HTTP ã®ç¯å²ããæ ¹æ¬çã«å¤ãã¦ãã¾ãã HTTP ã¯ä¸å±¤ã®ãããã³ã«ãã³ãã¯ã·ã§ã³ãã¼ã¹ã§ãããã¨ã«ä¾åã¯ãããä¿¡é ¼æ§ããããã¤ã¾ãã¡ãã»ã¼ã¸ã失ããªããã¨ï¼å°ãªãã¨ããã®ãããªå ´åã«ã¨ã©ã¼ã表示ãããã¨ï¼ã ããè¦æ±ãã¾ãã ã¤ã³ã¿ã¼ãããã§ãã£ã¨ãä¸è¬ç㪠2 ã¤ã®ãã©ã³ã¹ãã¼ããããã³ã«ã§ã¯ã TCP ã«ã¯ä¿¡é ¼æ§ãããã UDP ã«ã¯ä¿¡é ¼æ§ãããã¾ããã ãããã£ã¦ HTTP ã¯ãã³ãã¯ã·ã§ã³ãã¼ã¹ã§ãã TCP æ¨æºã«ä¾åãã¦ãã¾ãã
ã¯ã©ã¤ã¢ã³ãã¨ãµã¼ãã¼ã HTTP ã®ãªã¯ã¨ã¹ã/ã¬ã¹ãã³ã¹ã®ãã¢ã交æããåã« TCP ã³ãã¯ã·ã§ã³ã®ç¢ºç«ãå¿ è¦ã§ãããã¯è¤æ°ã®ããåããå¿ è¦ã¨ãã¾ãã HTTP/1.0 ã®æ¢å®ã®åä½ã¯ãããããã®ãªã¯ã¨ã¹ã/ã¬ã¹ãã³ã¹ã®ãã¢ã«å¯¾ãã¦åå¥ã« TCP ã³ãã¯ã·ã§ã³ãéããã®ã§ãã ããã¯ãè¤æ°ã®ãªã¯ã¨ã¹ããè¿ãé£ç¶ãã¦éä¿¡ãããã¨ãã«åä¸ã® TCP ã³ãã¯ã·ã§ã³ãå ±æãããã¨ãããéå¹çã§ãã
ãã®æ¬ ç¹ã軽æ¸ããããã HTTP/1.1 ã§ãã¤ãã©ã¤ã³ï¼å®è£
ãé£ãããã¨ãç«è¨¼ããã¾ããï¼ãæç¶çæ¥ç¶ãå°å
¥ãã¾ãããConnection ãããã¼ã使ç¨ãã¦ãä¸å±¤ã® TCP ã³ãã¯ã·ã§ã³ãé¨åçã«å¶å¾¡ã§ãã¾ãã
HTTP/2 ã¯ã²ã¨ã¤ã®ã³ãã¯ã·ã§ã³ã§è¤æ°ã®ã¡ãã»ã¼ã¸ãå¤éåããããã«é²åãã¾ãããã³ãã¯ã·ã§ã³ããã¦ã©ã¼ã ç¶æ
ã«ä¿ã¤ã®ã«å½¹ç«ã¡ãå¹çãåä¸ãã¾ãã
ãã HTTP ã«é©ãããã©ã³ã¹ãã¼ããããã³ã«ãè¨è¨ããå®é¨ãé²ãã§ãã¾ãã ãã¨ãã° Google ã¯ãããä¿¡é ¼æ§ãããå¹ççãªãã©ã³ã¹ãã¼ã層ãããã³ã«ãæä¾ããããã UDP ä¸ã«æ§ç¯ãã QUIC ã®å®é¨ãè¡ã£ã¦ãã¾ãã
HTTP ãå¶å¾¡ã§ãããã¨
HTTP ã®æ¡å¼µæ§ã«ããæéãããã¦ãã¦ã§ãã®å¶å¾¡æ§ãæ©è½æ§ãåä¸ã§ãã¾ããã ãã£ãã·ã¥ãèªè¨¼ã®æ¹æ³ã¯ã HTTP ã®è嵿ããåãæ±ããã¦ããæ©è½ã§ãã å¯¾ç §çã«ããªãªã¸ã³å¶ç´ãç·©åããæ©è½ã¯ 2010 年代ã«ãããã追å ããã¾ããã
HTTP ã§å¶å¾¡ã§ããä¸è¬çãªæ©è½ã¯ä»¥ä¸ã®ã¨ããã§ãã
- ãã£ãã·ã¥: ææ¸ãã©ã®ããã«ãã£ãã·ã¥ããããã HTTP ã§å¶å¾¡ã§ãã¾ãã ãµã¼ãã¼ã¯ãããã·ã¼ãã¯ã©ã¤ã¢ã³ãã«å¯¾ãã¦ãä½ãã©ãã ãã®éãã£ãã·ã¥ããããæç¤ºã§ãã¾ãã ã¯ã©ã¤ã¢ã³ãã¯ä¸éã®ãã£ãã·ã¥ãããã·ã¼ã«å¯¾ãã¦ãä¿åããã¦ããææ¸ãç¡è¦ããããæç¤ºã§ãã¾ãã
- ãªãªã¸ã³å¶ç´ã®ç·©å: ã®ããè¦ãä»ã®ãã©ã¤ãã·ã¼ä¾µå®³ãé¿ãããããã¦ã§ããã©ã¦ã¶ã¼ã¯ã¦ã§ããµã¤ãéãå³å¯ã«åå²ããããå¼·å¶ãã¦ãã¾ãã åä¸ãªãªã¸ã³ã®ãã¼ã¸ã ãããã¦ã§ããã¼ã¸ã®æ å ±ãã¹ã¦ã«ã¢ã¯ã»ã¹ã§ãã¾ãã ãã®å¶ç´ã¯ãµã¼ãã¼ã«ã¨ã£ã¦è² æ ã«ãªãã¾ããã HTTP ãããã¼ã§ãµã¼ãã¼å´ã®å³å¯ãªåå²ãç·©åã§ãã¾ããããã«ããããã¾ãã¾ãªãã¡ã¤ã³ãæ å ±æºã¨ããæ å ±ã®å¯ãéãã®ææ¸ã使ã§ãã¾ãããã ãããã®ããã«ããã»ãã¥ãªãã£ä¸ã®çç±ãããã¾ãã
- èªè¨¼:
ç¹å®ã®ã¦ã¼ã¶ã¼ããã¢ã¯ã»ã¹ã§ããªãããã«ä¿è·ããããã¼ã¸ãããã§ãããã
åºæ¬çãªèªè¨¼ã¯ HTTP ãæä¾ãã¦ããã
WWW-Authenticateãªã©ã®ãããã¼ã使ç¨ãããã HTTP Cookie ã使ç¨ããç¹å¥ãªã»ãã·ã§ã³ãè¨å®ããããã¾ãã - ãããã·ã¼ã¨ãã³ããªã³ã°: ãµã¼ãã¼ãã¯ã©ã¤ã¢ã³ããã¤ã³ãã©ãããå ã«é ç½®ããã¦ãä»ã®ã³ã³ãã¥ã¼ã¿ã¼ããæ¬å½ã® IP ã¢ãã¬ã¹ãè¦ããªããªã£ã¦ãããã¨ãããããã¾ãã ãã®ãããã¯ã¼ã¯å¢çãæ¸¡ãããã HTTP ãªã¯ã¨ã¹ãã¯ãããã·ã¼ãééãã¾ãã ãã¹ã¦ã®ãããã·ã¼ã HTTP ãããã·ã¼ã§ããã¨ã¯éãã¾ããã ãã¨ãã°ã SOCKS ãããã³ã«ã¯ããä½ã層ã§åä½ãã¾ãã ã»ãã«ã FTP ãªã©ããããã®ãããã·ã¼ã§å¦çããããã¨ãããã¾ãã
- ã»ãã·ã§ã³: HTTP Cookie ã使ç¨ãã¦ããªã¯ã¨ã¹ãã¨ãµã¼ãã¼ã®ã»ãã·ã§ã³ãé¢é£ä»ãã§ãã¾ãã ããã«ãã HTTP ãã¹ãã¼ãã¬ã¹ãããã³ã«ã§ããã«ãããããããã»ãã·ã§ã³ã使ã§ãã¾ãã ããã¯é»åååå¼ã®ã·ã§ããã³ã°ãã¹ã±ããã ãã§ãªããåºåå 容ã«ã¦ã¼ã¶ã¼è¨å®ãé©ç¨ã§ãããµã¤ãã§ãæç¨ã§ãã
HTTP ã®ããã¼
ã¯ã©ã¤ã¢ã³ãããµã¼ãã¼ï¼æçµç®çå°ã®ãµã¼ãã¼ã¾ãã¯ä¸éã®ãããã·ã¼ï¼ã¨éä¿¡ãããã¨ããã¯ã©ã¤ã¢ã³ãã¯ä»¥ä¸ã®æ®µéãè¸ã¿ã¾ãã
-
TCP ã³ãã¯ã·ã§ã³ãéã: TCP ã³ãã¯ã·ã§ã³ã¯ã²ã¨ã¤ã¾ãã¯è¤æ°ã®ãªã¯ã¨ã¹ããéä¿¡ããããåçãåãåã£ããããããã«ä½¿ç¨ãã¾ãã ã¯ã©ã¤ã¢ã³ãã¯æ°ããã³ãã¯ã·ã§ã³ãéããæ¢åã®ã³ãã¯ã·ã§ã³ãå使ç¨ããããããã¯ãµã¼ãã¼ã«å¯¾ãã¦è¤æ°ã® TCP ã³ãã¯ã·ã§ã³ãéããã¨ãã§ãã¾ãã
-
HTTP ã¡ãã»ã¼ã¸ãéä¿¡ãã: HTTP ã¡ãã»ã¼ã¸ãï¼HTTP/2 ããåï¼ã¯äººéãèªããã¨ãã§ãã¾ãã HTTP/2 ã§ã¯ã¡ãã»ã¼ã¸ããã¬ã¼ã å ã«ã«ãã»ã«åããã¦ãããç´æ¥èªããã¨ãä¸å¯è½ã«ãªãã¾ããããåçã¯å¤ãã£ã¦ãã¾ããã
httpGET / HTTP/1.1 Host: developer.mozilla.org Accept-Language: fr -
ãµã¼ãã¼ããéä¿¡ãããã¬ã¹ãã³ã¹ãèªã¿åãã¾ãã
httpHTTP/1.1 200 OK Date: Sat, 09 Oct 2010 14:28:02 GMT Server: Apache Last-Modified: Tue, 01 Dec 2009 20:18:22 GMT ETag: "51142bc1-7449-479b075b2891b" Accept-Ranges: bytes Content-Length: 29769 Content-Type: text/html <!doctype html...ï¼ããã«ããªã¯ã¨ã¹ããã 29769 ãã¤ãã®ã¦ã§ããã¼ã¸ãæ¥ã¾ãï¼ -
次ã®ãªã¯ã¨ã¹ãã®ããã«ãã³ãã¯ã·ã§ã³ãéãããå使ç¨ãã
HTTP ãã¤ãã©ã¤ã³ãæå¹ã§ããå ´åã¯ãæåã®ã¬ã¹ãã³ã¹ãå®å ¨ã«è¿ãã®ãå¾ ããã«è¤æ°ã®ãªã¯ã¨ã¹ããéä¿¡ã§ãã¾ãã HTTP ãã¤ãã©ã¤ã³ã¯æ¢åã®ãããã¯ã¼ã¯ã§å®è£ ããã®ãé£ãããã¨ãç«è¨¼ããã¦ãããå¤ãã½ããã¦ã§ã¢ã¨ææ°ãã¼ã¸ã§ã³ã®ã½ããã¦ã§ã¢ãå ±åãã¦ãã¾ãã HTTP ãã¤ãã©ã¤ã³ã¯ã HTTP/2 ã§ãã¬ã¼ã å ã«ãªã¯ã¨ã¹ããå¼·åã«å¤éåããæ©è½ã«ãã£ã¦ç½®ãæãããã¾ããã
HTTP ã¡ãã»ã¼ã¸
HTTP/1.1 以åã® HTTP ã¡ãã»ã¼ã¸ã¯ã人éãèªããã¨ãã§ãã¾ãã HTTP/2 ã§ã¯ãããã®ã¡ãã»ã¼ã¸ããã¤ããªã¼æ§é ã®ãã¬ã¼ã ã«åãè¾¼ã¾ãã¦ããããããã¼ã®å§ç¸®ãå¤éåã¨ãã£ãæé©åãå¯è½ã«ãªãã¾ããã æ¬æ¥ã® HTTP ã¡ãã»ã¼ã¸ã®é¨åã ãããã®ãã¼ã¸ã§ã³ã® HTTP ã§éä¿¡ããã¦ãã¦ããåã¡ãã»ã¼ã¸ã®æå³ã¯å¤ãã£ã¦ããããã¯ã©ã¤ã¢ã³ãã¯æ¬æ¥ã® HTTP/1.1 ã¡ãã»ã¼ã¸ãï¼äºå®ä¸ï¼åæ§æãã¾ãã ãããã£ã¦ã HTTP/2 ã¡ãã»ã¼ã¸ã HTTP/1.1 å½¢å¼ã§çè§£ãããã¨ã¯å½¹ã«ç«ã¡ã¾ãã
HTTP ã¡ãã»ã¼ã¸ã¯ãªã¯ã¨ã¹ãã¨ã¬ã¹ãã³ã¹ã® 2 種é¡ãããããããåºæã®å½¢å¼ã«ãªã£ã¦ãã¾ãã
ãªã¯ã¨ã¹ã
HTTP ãªã¯ã¨ã¹ãã®ä¾ã§ãã
ãªã¯ã¨ã¹ãã¯ä»¥ä¸ã®è¦ç´ ã§æ§æããã¾ãã
- HTTP ã¡ã½ãããé常ãã¯ã©ã¤ã¢ã³ããå®è¡ãããæä½ãå®ç¾©ãã
GETãPOSTã®ãããªåè©ããOPTIONSãHEADã®ãããªåè©ã§ãã ä¸è¬çã«ã¯ã©ã¤ã¢ã³ãã¯ãªã½ã¼ã¹ãåãè¾¼ãï¼GETã使ç¨ï¼ã HTML ãã©ã¼ã ã®å¤ãéä¿¡ããï¼POSTã使ç¨ï¼ãã¨ãæã¿ã¾ãããå ´åã«ãã£ã¦ã¯ã»ãã®æä½ãå¿ è¦ã«ãªãã¾ãã - åãè¾¼ããªã½ã¼ã¹ã®ãã¹ãç¶æ³ããæããã§ããã°ãªã½ã¼ã¹ã® URL ã¯ãã®è¦ç´ ããåãé¤ããã¾ãããã¨ãã°ãããã³ã« (
http://)ããã¡ã¤ã³ï¼ããã§ã¯developer.mozilla.orgï¼ãTCP ãã¼ãï¼ããã§ã¯80ï¼ãåãé¤ããã¾ãã - HTTP ãããã³ã«ã®ãã¼ã¸ã§ã³ã
- ãµã¼ãã¼ã«è¿½å ã®æ å ±ãä¸ããä»»æã®ãããã¼ã
POSTã®ãããªã¡ã½ããã§ã¯ã¬ã¹ãã³ã¹ã¨åæ§ã«ãéä¿¡ãããªã½ã¼ã¹ãå å«ããæ¬ä½ãããã¾ãã
ã¬ã¹ãã³ã¹
ã¬ã¹ãã³ã¹ã®ä¾ã§ãã
ã¬ã¹ãã³ã¹ã¯ä»¥ä¸ã®è¦ç´ ã§æ§æããã¾ãã
- æºæ ãã HTTP ãããã³ã«ã®ãã¼ã¸ã§ã³ã
- ã¹ãã¼ã¿ã¹ã³ã¼ãããªã¯ã¨ã¹ããæåãããå¦ããããã³ãã®çç±ã示ãã¾ãã
- ã¹ãã¼ã¿ã¹ã¡ãã»ã¼ã¸ãã¹ãã¼ã¿ã¹ã³ã¼ãã®ç°¡åãªèª¬æã§ãããæ¨©å¨ã¯ããã¾ããã
- ãªã¯ã¨ã¹ãã¨åæ§ã® HTTP ãããã¼ã
- ï¼çç¥å¯ï¼ãªã½ã¼ã¹ãå«ãæ¬ä½ã
HTTP ã«åºã¥ã API
HTTP ãã¼ã¹ã® API ã§æãä¸è¬çã«ä½¿ç¨ããã¦ããã®ã¯ãã§ãã API ã§ãJavaScript ãã HTTP ãªã¯ã¨ã¹ããè¡ãããã«ä½¿ç¨ãããã¨ãã§ãã¾ãããã§ãã API 㯠XMLHttpRequest API ãç½®ãæãããã®ã§ãã
ä»ã® APIããµã¼ãã¼éä¿¡ã¤ãã³ãã¯ããµã¼ãã¼ãã¯ã©ã¤ã¢ã³ãã«ã¤ãã³ããéä¿¡ãããã¨ãã§ãã䏿¹éè¡ã®ãµã¼ãã¹ã§ã HTTP ããã©ã³ã¹ãã¼ãã®ä»çµã¿ã¨ãã¦å©ç¨ãã¦ãã¾ãã
EventSource ã¤ã³ã¿ã¼ãã§ã¤ã¹ã使ç¨ãã¦ãã¯ã©ã¤ã¢ã³ãã¯æ¥ç¶ãéãã¦ã¤ãã³ããã³ãã©ã¼ã確ç«ãã¾ãã
ã¯ã©ã¤ã¢ã³ãã®ãã©ã¦ã¶ã¼ã¯ HTTP ã¹ããªã¼ã ã«å±ãã¡ãã»ã¼ã¸ãèªåçã«é©å㪠Event ãªãã¸ã§ã¯ãã«å¤æãã¾ããããããã¤ãã³ãã®åãåããã°ãã®åã«ç»é²ããã¦ããã¤ãã³ããã³ãã©ã¼ã«é
ä¿¡ããåã«å¯¾ãã¦ã¤ãã³ããã³ãã©ã¼ãè¨å®ããã¦ããªãå ´åã¯ã onmessage ã¤ãã³ããã³ãã©ã¼ã«é
ä¿¡ãã¾ãã
ã¾ã¨ã
HTTP ã¯å®¹æã«ä½¿ç¨ã§ãããæ¡å¼µå¯è½ãªãããã³ã«ã§ããã¯ã©ã¤ã¢ã³ããµã¼ãã¼æ§é ã¨åç´ã«ãããã¼ã追å ã§ããæ©è½æ§ãçµã¿åããã¦ã HTTP ã¯ã¦ã§ãã®æ©è½æ¡å¼µã«åããã¦é²åã§ãã¾ãã
HTTP/2 ã§ããã©ã¼ãã³ã¹ãåä¸ããããããã¬ã¼ã å ã« HTTP ã¡ãã»ã¼ã¸ãåãè¾¼ããã¨ã«ããè¤éããããããå¢ãã¾ããããã¡ãã»ã¼ã¸ã®åºæ¬çãªæ§é 㯠HTTP/1.0 ããåãã¾ã¾ã§ãã ã»ãã·ã§ã³ã®ããã¼ã¯ä¾ç¶ã¨ãã¦åºæ¬çã§ãããããã¼ã®èª¿æ»ãã·ã³ãã«ãª HTTP ãããã¯ã¼ã¯ã¢ãã¿ã¼ã§ãããã°ãããã¨ãã§ãã¾ãã
é¢é£æ å ±
- HTTP ã®é²å
- ç¨èªé: