»Æ½ð³ÇÍøÕ¾

1.1£º»¥ÁªÍøÍ¨Ñ¶µÄ»ùʯ£¬ÄãÕæµÄÏàʶËüÂ𠣿
ȪԴ£ºÖ¤È¯Ê±±¨Íø×÷Õߣº³ÌÒæÖÐ2026-03-04 04:40:11
wwwzqhsauikdwjbfkjabfwqr

HTTP/1.1£ºÅþÁ¬ÌìϵÄÎÞÉùÓïÑÔ

ÔÚÎÒÃÇÿһ´Îµã»÷Á´½Ó¡¢Ë¢ÐÂÒ³Ãæ¡¢ÉÏ´«Í¼Æ¬µÄ±³ºó£¬¶¼Òþ²Ø×ÅÒ»¸öÖÁ¹ØÖ÷ÒªµÄ?ЭÒ顪¡ªHTTP/1.1¡£ËüÓÌÈ绥ÁªÍøÍ¨Ñ¶µÄÎÞÉùÓïÑÔ£¬Ä¬Ä¬µØ?ÅþÁ¬×ÅÊýÒÔÒڼƵÄ×°±¸£¬Ö§³ÖÆðÎÒÃǸ»ºñ¶à²ÊµÄÊý×ÖÉúÑÄ¡£¹ØÓÚ´ó´ó¶¼Óû§¶øÑÔ£¬HTTP/1.1¿ÉÄÜÖ»ÊÇÒ»¸öÄ£ºýµÄ¿´·¨£¬»òÕß½ö½öÊÇä¯ÀÀÆ÷µØÖ·À¸ÖеÄÒ»´®×Ö·û¡£

½ñÌ죬¾ÍÈÃÎÒÃÇÒ»Æð²¦¿ªÃÔÎí£¬ÉîÈë̽ÌÖÕâ¸ö»¥ÁªÍøÍ¨Ñ¶»ùʯµÄÉñÃØ¡£

ʲôÊÇHTTP/1.1 £¿

HTTP£¬¼´³¬Îı¾´«ÊäЭÒ飨HypertextTransferProtocol£©£¬ÊÇÍòÎ¬Íø£¨WorldWideWeb£©Êý¾ÝͨѶµÄ»ù´¡¡£¶øHTTP/1.1£¬ÔòÊǸÃЭÒéµÄÒ»¸öÖ÷Òª°æ?±¾£¬ÔÚ1997ÄêÊ×´ÎÐû²¼£¬²¢³ÉΪ»¥ÁªÍøÉÏÊÂʵÉϵıê×¼£¬Ö±µ½HTTP/2ºÍHTTP/3µÄ·ºÆð¡£

Ö»¹ÜÓиüеİ汾£¬HTTP/1.1ÒòÆäÆÕ±éµÄÓ¦ÓúÍÎȹ̵ÄÐÔÄÜ£¬ÖÁ½ñÈÔÔÚ»¥ÁªÍøÍ¨Ñ¶ÖÐÊÎÑÝמÙ×ãÇáÖØµÄ½ÇÉ«¡£

¿Í»§¶Ë-·þÎñÆ÷Ä£×Ó£º»¥ÁªÍøµÄ¾­µä¼Ü¹¹

HTTP/1.1×ñÕÕ¾­µäµÄ¿Í»§¶Ë-·þÎñÆ÷£¨Client-Server£©Ä£×Ó¡£ÔÚÕâ¸öÄ£×ÓÖУ¬¿Í»§¶Ë£¨Í¨³£ÊÇÎÒÃǵÄä¯ÀÀÆ÷£©ÌᳫÇëÇ󣬷þÎñÆ÷£¨ÍйÜÍøÒ³¡¢Ó¦ÓóÌÐòµÄÅÌËã»ú£©ÔòÏìÓ¦ÕâЩÇëÇó¡£ÕâÖÖÇåÎúµÄ·Ö¹¤Ê¹µÃ»¥ÁªÍøµÄ¹¹½¨ºÍά»¤±äµÃ?¸ßЧ¶øÓÐÐò¡£

¿Í»§¶Ë£¨Client£©£º¿ÉÒÔÊÇÄãµçÄÔÉϵÄÍøÒ³ä¯ÀÀÆ÷¡¢ÊÖ»úÉϵÄAPP£¬ÉõÖÁÊÇÎïÁªÍø×°±¸¡£ËüµÄÖ÷ÒªÖ°ÔðÊÇÏò·þÎñÆ÷·¢ËÍHTTPÇëÇ󣬲¢ÎüÊÕ¡¢ÆÊÎö·þÎñÆ÷·µ»ØµÄÏìÓ¦¡£·þÎñÆ÷£¨Server£©£º¿ÉÒÔÊÇWeb·þÎñÆ÷£¨ÈçApache¡¢Nginx£©¡¢Ó¦Ó÷þÎñÆ÷£¬»òÕßÊý¾Ý¿â·þÎñÆ÷¡£

ËüÈÏÕæÎüÊÕÀ´×Ô¿Í»§¶ËµÄ?ÇëÇ󣬾ÙÐд¦Öóͷ££¨Èç²éÕÒÎļþ¡¢Ö´ÐдúÂë¡¢ÅÌÎÊÊý¾Ý£©£¬È»ºó½«´¦Öóͷ£Ð§¹û·â×°³ÉHTTPÏìÓ¦·¢Ëͻؿͻ§¶Ë¡£

ÇëÇó-ÏìӦģʽ£º¶Ô»°µÄ»ùʯ

HTTP/1.1µÄ½¹µãÊÂÇé·½·¨ÊÇÇëÇó-ÏìÓ¦£¨Request-Response£©Ä£Ê½¡£Ã¿Ò»´Î¿Í»§¶ËÓë·þÎñÆ÷µÄ½»»¥£¬¶¼Ê¼ÓÚÒ»´ÎÇëÇó£¬ÖÕÓÚÒ»´ÎÏìÓ¦¡£

HTTPÇëÇó£¨HTTPRequest£©£º¿Í»§¶ËÏò·þÎñÆ÷·¢Ë͵ÄÖ¸Á°üÀ¨Á˿ͻ§¶ËÏëÒª×öʲôÒÔ¼°ÐèҪʲôÐÅÏ¢¡£Ò»¸öµä·¶µÄHTTPÇëÇó°üÀ¨ÒÔϼ¸¸öÒªº¦²¿·Ö£º

ÇëÇóÐУ¨RequestLine£©£ºÕâÊÇÇëÇóµÄµÚÒ»ÐУ¬°üÀ¨ÁËÇëÇóÒªÁì¡¢ÇëÇóURI£¨Í³Ò»×ÊÔ´±êʶ·û£©ºÍHTTPЭÒé°æ±¾¡£ÇëÇóÒªÁ죨HTTPMethods£©£ºÕâÊÇHTTPÇëÇóµÄ½¹µã£¬¸æËß·þÎñÆ÷Ï£ÍûÖ´ÐеIJÙ×÷¡£×î³£¼ûµÄÇëÇóÒªÁì°üÀ¨£ºGET£ºÓÃÓÚ´Ó·þÎñÆ÷»ñÈ¡Êý¾Ý¡£

ÀýÈ磬µ±Äã»á¼ûÒ»¸öÍøÒ³Ê±£¬ä¯ÀÀÆ÷¾Í·¢ËÍÒ»¸öGETÇëÇóÀ´»ñÈ¡HTMLÎļþ¡£POST£ºÓÃÓÚÏò·þÎñÆ÷Ìá½»Êý¾Ý£¬Í¨³£ÓÃÓÚ½¨ÉèÐÂ×ÊÔ´»ò¸üÐÂÏÖÓÐ×ÊÔ´¡£ÀýÈ磬ÄãÌá½»Ò»¸ö±íµ¥Ê±£¬¾Í»áʹÓÃPOSTÇëÇó¡£PUT£ºÓÃÓÚ¸üзþÎñÆ÷ÉϵÄÏÖÓÐ×ÊÔ´£¬ÈôÊÇ×ÊÔ´²»±£´æ£¬Ôò¿ÉÄܽ¨Éè¡£

DELETE£ºÓÃÓÚɾ³ý·þÎñÆ÷ÉϵÄÖ¸¶¨×ÊÔ´¡£HEAD£ºÀàËÆÓÚGET£¬µ«Ö»·µ»ØÏìÓ¦µÄ?Í·²¿ÐÅÏ¢£¬²»·µ»ØÏìÓ¦Ì壬³£?ÓÃÓÚ¼ì²é×ÊÔ´µÄÔªÊý¾Ý¡£OPTIONS£ºÓÃÓÚÅÌÎÊÄ¿µÄ×ÊÔ´µÄͨѶѡÏî¡£CONNECT£ºÓÃÓÚÓë´úÀí·þÎñÆ÷½¨ÉèËíµÀ£¬Í¨³£ÓÃÓÚSSL/TLS¼ÓÃÜÅþÁ¬¡£

TRACE£ºÓÃÓÚ»ØÏÔ·þÎñÆ÷ÊÕµ½µÄÇëÇó£¬Ö÷ÒªÓÃÓÚÕï¶Ï¡£ÇëÇóURI£¨RequestURI£©£ºÖ¸Ã÷Îú¿Í»§¶ËÏëÒª»á¼ûµÄ?·þÎñÆ÷ÉϵÄ×ÊÔ´£¬¿ÉÒÔÊÇÏà¶Ô·¾¶»ò¾ø¶Ô·¾¶¡£HTTPЭÒé°æ±¾£¨HTTPVersion£©£ºÔÚ´ËÇ龳ϣ¬¾ÍÊÇHTTP/1.1¡£ÇëÇóÍ·²¿?£¨RequestHeaders£©£ºÌṩ¹ØÓÚÇëÇóµÄÌØÊâÐÅÏ¢£¬Èç¿Í»§¶ËÀàÐÍ¡¢½ÓÊܵÄÄÚÈÝÀàÐÍ¡¢»º´æÖ¸ÁîµÈ¡£

³£¼ûµÄÍ·²¿×Ö¶ÎÓУºHost£ºÖ¸¶¨ÁË·þÎñÆ÷µÄÓòÃû£¬¹ØÓÚÐéÄâÖ÷»úºÜÊÇÖ÷Òª¡£User-Agent£ºÅú×¢¿Í»§¶ËµÄÉí·Ý£¬Èçä¯ÀÀÆ÷ÀàÐͺͰ汾¡£Accept£º¸æËß·þÎñÆ÷¿Í»§¶ËÄܹ»½ÓÊÜÄÄЩýÌåÀàÐÍ£¨Èçtext/html¡¢application/json£©¡£

Cookie£º°üÀ¨·þÎñÆ÷֮ǰ·¢Ë͸ø¿Í»§¶ËµÄcookieÐÅÏ¢¡£Referer£ºÖ¸Ê¾ÁËÌᳫÇëÇóµÄË­ÈËÒ³ÃæµÄURL¡£ÇëÇóÕýÎÄ£¨RequestBody£©£ºÔÚijЩÇëÇóÒªÁ죨ÈçPOST£©ÖУ¬ÓÃÓÚЯ´øÒª·¢Ë͸ø·þÎñÆ÷µÄÊý¾Ý¡£

HTTPÏìÓ¦£¨HTTPResponse£©£º·þÎñÆ÷¶Ô¿Í»§¶ËÇëÇóµÄ»ØÓ¦£¬°üÀ¨ÁËÇëÇóµÄ´¦Öóͷ£Ð§¹û¡£Ò»¸öµä·¶µÄHTTPÏìÓ¦Ò²°üÀ¨¼¸¸öÒªº¦²¿·Ö£º

״̬ÐУ¨StatusLine£©£ºÕâÊÇÏìÓ¦µÄµÚÒ»ÐУ¬°üÀ¨ÁËHTTPЭÒé°æ±¾¡¢×´Ì¬ÂëºÍ״̬ÐÂÎÅ¡£×´Ì¬Â루StatusCodes£©£ºÕâÊÇÒ»¸öÈýλÊýµÄÊý×Ö£¬ÓÃÓÚָʾÇëÇóµÄ´¦Öóͷ£Ð§¹û¡£ËüÃDZ»·ÖΪÎå´óÀࣺ1xxInformational£ºÇëÇóÒÑÎüÊÕ£¬¼ÌÐø´¦Öóͷ£¡£

2xxSuccess£ºÇëÇóÒÑÀÖ³ÉÊÕµ½¡¢Ã÷È·ºÍ½ÓÊÜ¡£200OK£º×î³£¼ûµÄ³É?¹¦×´Ì¬Â룬ÌåÏÖÇëÇóÀֳɡ£201Created£ºÌåÏÖÇëÇóÀֳɣ¬²¢?ÇÒ½¨ÉèÁËÒ»¸öеÄ×ÊÔ´¡£204NoContent£ºÌåÏÖÇëÇóÀֳɣ¬µ«·þÎñÆ÷ûÓзµ»ØÈκÎÄÚÈÝ¡£3xxRedirection£ºÐèÒª¿Í»§¶Ë½ÓÄɽøÒ»²½µÄ?²Ù×÷²Å»ªÍê³ÉÇëÇó¡£

301MovedPermanently£ºÌåÏÖ×ÊÔ´Òѱ»ÓÀÊÀÒÆ¶¯µ½ÐµÄURL¡£302Found£¨»òMovedTemporarily£©£ºÌåÏÖ×ÊÔ´ÔÝÊ±ÒÆ¶¯µ½ÐµÄURL¡£304NotModified£ºÓÃÓÚ»º´æ£¬ÌåÏÖ¿Í»§¶ËµÄ×ÊԴûÓÐת±ä£¬ÎÞÐèÖØÐÂÏÂÔØ¡£

4xxClientError£º¿Í»§¶Ë¹ýʧ£¬ÇëÇó°üÀ¨²»×¼È·µÄÓï·¨»òÎÞ·¨Öª×ã¡£400BadRequest£ºÇëÇóÎÞЧ¡£401Unauthorized£ºÇëÇóÐèÒªÓû§ÈÏÖ¤¡£403Forbidden£º·þÎñÆ÷¾Ü¾øÖ´ÐÐÇëÇó£¬×ÝÈ»ÈÏÖ¤Àֳɡ£404NotFound£ºÇëÇóµÄ×ÊÔ´²»±£´æ¡£

5xxServerError£º·þÎñÆ÷¹ýʧ£¬·þÎñÆ÷ÔÚ´¦Öóͷ£ÇëÇóʱ±¬·¢´í?Îó¡£500InternalServerError£º·þÎñÆ÷ÄÚ²¿?¹ýʧ¡£503ServiceUnavailable£º·þÎñÆ÷ÔÝʱÎÞ·¨´¦Öóͷ£ÇëÇó¡£×´Ì¬ÐÂÎÅ£¨ReasonPhrase£©£º¶Ô״̬ÂëµÄ¼òËæ±Ê×ÖÐÎò£¬Èç"OK"¡¢"NotFound"¡£

ÏìӦͷ²¿£¨ResponseHeaders£©£ºÌṩ¹ØÓÚÏìÓ¦µÄÌØÊâÐÅÏ¢£¬Èç·þÎñÆ÷ÀàÐÍ¡¢ÄÚÈݳ¤¶È¡¢ÄÚÈÝÀàÐÍ¡¢»º´æÕ½ÂԵȡ£³£¼ûµÄÍ·²¿×Ö¶ÎÓУºServer£ºÅú×¢·þÎñÆ÷Èí¼þµÄÀàÐͺͰæ?±¾¡£Content-Type£ºÖ¸Ã÷ÏìÓ¦ÌåµÄýÌåÀàÐÍ£¨Èçtext/html¡¢image/jpeg£©¡£

Content-Length£ºÖ¸Ã÷ÏìÓ¦ÌåµÄ³¤¶È£¨ÒÔ×Ö½ÚΪµ¥Î»£©¡£Set-Cookie£ºÖ¸Ê¾·þÎñÆ÷·¢Ë͸ø¿Í»§¶ËµÄcookie¡£Cache-Control£ºÖ¸Ê¾¿Í»§¶ËÔõÑù»º´æÏìÓ¦¡£ÏìÓ¦ÕýÎÄ£¨ResponseBody£©£º·þÎñÆ÷·µ»ØµÄÏÖʵÊý¾Ý£¬ÈçHTMLÎļþ¡¢Í¼Æ¬¡¢JSONÊý¾ÝµÈ¡£

HTTP/1.1µÄÍ»ÆÆ£º³¤ÆÚÅþÁ¬Óë¹ÜµÀ»¯

Ïà½ÏÓÚÆäǰÉíHTTP/1.0£¬HTTP/1.1ÔÚÐÔÄܺÍЧÂÊÉϾÙÐÐÁËÏÔÖøµÄˢУ¬ÆäÖÐ×î½¹µãµÄÁ½¸öÌØÕ÷¾ÍÊdz¤ÆÚÅþÁ¬£¨PersistentConnections£©ºÍ¹ÜµÀ»¯£¨Pipelining£©¡£

³¤ÆÚÅþÁ¬£¨PersistentConnections£©£ºÔÚHTTP/1.0ÖУ¬ä¯ÀÀÆ÷ͨ³£»áΪÿ¸öÇëÇó½¨ÉèÒ»¸öеÄTCPÅþÁ¬£¬²¢ÔÚÇëÇóÍê³Éºó¹Ø±Õ¸ÃÅþÁ¬¡£ÕâÖÖ·½·¨´øÀ´ÁË´ó×ÚµÄÅþÁ¬½¨ÉèºÍ¹Ø±Õ¿ªÏú£¬´ó´ó?½µµÍÁËͨѶЧÂÊ¡£HTTP/1.1ÒýÈëÁËKeep-Alive»úÖÆ£¬ÔÊÐí¿Í»§¶ËºÍ·þÎñÆ÷ÔÚÍê³ÉÒ»´ÎÇëÇó-ÏìÓ¦ºó£¬±£?³ÖTCPÅþÁ¬µÄ·­¿ª×´Ì¬£¬ÒÔ±ãºóÐøµÄÇëÇóÄܹ»ÖØÓÃÕâ¸öÅþÁ¬¡£

ÕâÏÔÖøïÔÌ­ÁËTCPÎÕÊֵĿªÏú£¬ÌáÉýÁËÍøÒ³µÄ¼ÓÔØËÙÂÊ£¬ÓÈÆäÊÇÔÚ¼ÓÔØ°üÀ¨´ó×ÚС×ÊÔ´µÄÍøÒ³Ê±¡£

¹ÜµÀ»¯£¨Pipelining£©£ºÔÚ³¤ÆÚÅþÁ¬µÄ»ù´¡ÉÏ£¬HTTP/1.1½øÒ»²½ÒýÈëÁ˹ܵÀ»¯ÊÖÒÕ¡£ËüÔÊÐí¿Í»§¶ËÒ»´ÎÐÔ·¢ËͶà¸öHTTPÇëÇ󣬶øÎÞÐèÆÚ´ýǰһ¸öÇëÇóµÄÏìÓ¦¡£·þÎñÆ÷Ôòƾ֤ÎüÊÕµ½µÄÇëÇó˳Ðò£¨ËäÈ»ÏìÓ¦·×Æç¶¨°´Ë³Ðò·µ»Ø£©£¬ÒÀ´Î´¦Öóͷ£²¢·¢ËÍÏìÓ¦¡£Õâ×èÖ¹ÁË¡°¶ÓÍ·ÛÕ±Õ¡±£¨Head-of-LineBlocking£©µÄÎÊÌ⣬ÀíÂÛÉÏ¿ÉÒÔÏÔÖøÌáÉýÐÔÄÜ¡£

ÔÚÏÖʵӦÓÃÖУ¬ÓÉÓÚ·þÎñÆ÷ºÍ¿Í»§¶ËʵÏÖÒÔ¼°ÍøÂç״̬µÄ?²î±ð£¬¹ÜµÀ»¯²¢·Ç×ÜÄÜ´øÀ´Ô¤ÆÚµÄÐÔÄÜÌáÉý£¬ÓÐʱÉõÖÁ»áÒýÈëеÄÎÊÌ⣬ÕâÒ²ÊÇØÊºóHTTP/2½ÓÄɶà·¸´Óã¨Multiplexing£©À´½â¾ö¶ÓÍ·ÛÕ±ÕµÄÔµ¹ÊÔ­ÓÉÖ®Ò»¡£

HTTP/1.1µÄÕâЩˢУ¬Ê¹µÃ»¥ÁªÍøµÄ?ͨѶԽ·¢¸ßЧ¡¢ÎȹÌ£¬Ò²ÎªØÊºóµÄWebÊÖÒÕÉú³¤µÓÚ¨Á˼áʵµÄ»ù´¡¡£Ã÷È·ÕâЩ»ùÀ´Ô´Àí£¬ÊÇÎÒÃǽøÒ»²½Ì½Ë÷»¥ÁªÍøÉñÃØµÄµÚÒ»²½¡£

HTTP/1.1µÄÉî¶ÈÆÊÎö£º¹¹½¨¸ßЧWebͨѶµÄÒªº¦

ÔÚÉÏÒ»²¿·Ö£¬ÎÒÃÇÒѾ­¶ÔHTTP/1.1µÄ»ù±¾¿´·¨¡¢Ä£×Ó¡¢ÇëÇó-ÏìӦģʽÒÔ¼°³¤ÆÚÅþÁ¬ºÍ¹ÜµÀ»¯µÈ½¹µãÌØÕ÷ÓÐÁËÆðÔ´µÄ?ÊìϤ¡£ÏÖÔÚ£¬ÈÃÎÒÃǼÌÐøÉîÈ룬´Ó¸üϸÄåµÄ½Ç¶ÈÆÊÎöHTTP/1.1µÄÊÂÇé»úÖÆ£¬ÒÔ¼°ËüÔÚÏÖ´ú?Web¿ª·¢ÖеÄÒâÒåÓëÌôÕ½¡£

Í·²¿ÐÅÏ¢µÄÖǻۣºÐÅÏ¢µÄת´ïÕß

HTTPÍ·²¿ÐÅÏ¢£¨Headers£©ÊÇHTTP/1.1ЭÒéÖÐÖÁ¹ØÖ÷ÒªµÄ?×é³É²¿·Ö£¬ËüÃÇÓÌÈçͨѶ˫·½×ª´ïµÄ¡°ÏßË÷¡±ºÍ¡°Ö¸Á£¬°üÀ¨Á˸»ºñµÄÐÅÏ¢£¬Ö¸µ¼×ÅÇëÇóµÄ·¢ËÍ¡¢´¦Öóͷ£ºÍÏìÓ¦µÄÌìÉú¡£

ÇëÇóÍ·²¿£¨RequestHeaders£©µÄ½ø½×£º³ý?ÁËÎÒÃÇÖ®Ìõ¼þµ½µÄHost¡¢User-Agent¡¢Accept¡¢Cookie¡¢Referer£¬HTTP/1.1»¹ÒýÈëÁ˸ü¶àÓÐÓõÄÇëÇóÍ·²¿£¬ÀýÈ磺

If-Modified-SinceºÍIf-None-Match£ºÕâÊÇHTTP/1.1ÔÚ»º´æ¿ØÖÆ·½ÃæµÄ?Ö÷ÒªÔöÇ¿¡ £¿Í»§¶Ë¿ÉÒÔ·¢ËÍÕâЩͷ²¿£¬¼û¸æ·þÎñÆ÷ËüÍâµØ»º´æµÄ×ÊÔ´ÊÇ»ùÓÚÄĸöÐÞ¸Äʱ¼ä£¨If-Modified-Since£©»òÕßETag£¨ÊµÌå±êÇ©£¬If-None-Match£©ÌìÉúµÄ¡£

ÈôÊÇ·þÎñÆ÷·¢Ã÷×ÊÔ´×Ô¸Ãʱ¼äÒÔÀ´Î´±»Ð޸쬻òÕßETagÆ¥Å䣬Ëü»á·µ»ØÒ»¸ö304NotModifiedÏìÓ¦£¬¼û¸æ¿Í»§¶ËʹÓÃÍâµØ»º´æ¼´¿É£¬´ó´ó½ÚÔ¼ÁË´ø¿íºÍ´¦Öóͷ£Ê±¼ä¡£Expect£ºÓÃÓÚָʾ¿Í»§¶ËÆÚÍû·þÎñÆ÷Ö´ÐеÄÌØ¶¨ÐÐΪ£¬ÀýÈçExpect:100-continue£¬ÌåÏÖ¿Í»§¶ËÔÚ·¢ËÍ´óµÄÇëÇóÕýÎÄ֮ǰ£¬Ï£ÍûÏÈ»ñµÃ·þÎñÆ÷µÄ¡°¼ÌÐø¡±ÏìÓ¦£¨100Continue״̬Â룩£¬ÒÔ×èÖ¹²»ÐëÒªµÄÉÏ´«¡£

X-Forwarded-For£ºËäÈ»²»ÊÇHTTP/1.1±ê×¼½ç˵µÄÍ·²¿£¬µ«?±»ÆÕ±éʹÓã¬ÓÃÓڼͼԭʼ¿Í»§¶ËµÄIPµØÖ·£¬µ±ÇëÇó¾­Óɶà¸ö´ú?Àí·þÎñÆ÷ʱÓÈΪÖ÷Òª¡£Content-TypeºÍContent-Length£ºÓëÇëÇóÕýÎÄÅäºÏʹÓã¬Ö¸Ã÷ÎúÕýÎĵÄýÌåÀàÐͺ;Þϸ£¬·þÎñÆ÷ÐèҪƾ֤ÕâЩÐÅÏ¢À´×¼È·ÆÊÎöºÍ´¦Öóͷ£ÎüÊÕµ½µÄÊý¾Ý¡£

ÏìӦͷ²¿£¨ResponseHeaders£©µÄ¾«ÃÏìӦͷ²¿Í¬ÑùÐÅÏ¢Á¿ÖØ´ó£¬Ó°Ïì×ſͻ§¶ËÈçÄÇÀï?Àí·þÎñÆ÷·µ»ØµÄ?Êý¾Ý¡£

Content-TypeºÍContent-Length£ºÓëÇëÇóÖеÄ×÷ÓÃÀàËÆ£¬¼û¸æ¿Í»§¶ËÏìÓ¦ÌåµÄÀàÐͺ;Þϸ¡£Cache-Control£ºÕâÊÇÒ»¸öǿʢµÄ»º´æ?¿ØÖÆÖ¸Á¿ÉÒÔÖ¸¶¨Èçpublic£¨ÔÊÐíËùÓлº´æ£©¡¢private£¨Ö»ÔÊÐí¿Í»§¶ËÍâµØ»º´æ£©¡¢no-cache£¨ÐèÒª¾ÙÐÐÑéÖ¤²Å»ª»º´æ?£©¡¢no-store£¨Õ¥È¡»º´æ£©¡¢max-age£¨»º´æµÄ×î´óÉúÑÄʱ¼ä£©µÈ¡£

Expires£ºÌṩÁË»º´æµÄ¾ø¶ÔÓâÆÚʱ¼ä£¬ÓëCache-ControlÖеÄmax-ageÅäºÏʹÓ㬵«Cache-Controlͨ³£¾ßÓиü¸ßµÄÓÅÏȼ¶¡£ETag£ºÊµÌåµÄΨһ±êʶ·û£¬ÓÃÓÚʵÏÖETag»º´æ?ÑéÖ¤¡£·þÎñÆ÷¿ÉÒÔÌìÉúÒ»¸öETagÖµ£¬¿Í»§¶ËÔÚºóÐøÇëÇóÖÐͨ¹ýIf-None-MatchÍ·²¿·¢Ë͸ÃÖµ£¬·þÎñÆ÷ÒÔ´ËÅжÏ×ÊÔ´ÊÇ·ñ±¬·¢×ª±ä¡£

Last-Modified£º×ÊÔ´µÄ×îºóÐÞËûÈÕÆÚ£¬ÓÃÓÚʵÏÖIf-Modified-Since»º´æÑéÖ¤¡£Set-Cookie£ºÓÃÓÚÔÚÏìÓ¦ÖÐÉèÖÃCookie£¬¿Í»§¶Ë»á½«Æä±£?±£´æÍâµØ£¬²¢ÔÚºóÐøÇëÇóÖз¢ËͻطþÎñÆ÷£¬ÊµÏֻỰ¹ÜÀí¡¢Óû§¸ú×ٵȹ¦Ð§¡£Location£ºµ±·þÎñÆ÷·µ»ØÖض¨Ïò״̬Â루Èç301¡¢302£©Ê±£¬LocationÍ·²¿»á°üÀ¨ÐµÄURL£¬¿Í»§¶Ë»áƾ֤´ËURLÌᳫеÄÇëÇó¡£

Server£ºÖ¸Ê¾·þÎñÆ÷ʹÓõÄÈí¼þ£¬ÓÐʱҲ¿ÉÄܰüÀ¨°æ±¾ÐÅÏ¢¡£

HTTP/1.1µÄЧÂÊÆ¿¾±ÓëÑݽø

Ö»¹ÜHTTP/1.1´øÀ´Á˳¤ÆÚÅþÁ¬ºÍ¹ÜµÀ»¯µÈÖ÷ҪˢУ¬µ«Ëæ×Å»¥ÁªÍøÓ¦ÓõÄÖØ´ó»¯ºÍÓû§¶ÔÏìÓ¦ËÙÂÊÒªÇóµÄÌá¸ß£¬Æä¾ÖÏÞÐÔÒ²Öð½¥Õ¹ÏÖ¡£

¶ÓÍ·ÛÕ±Õ£¨Head-of-LineBlocking,HOLBlocking£©£ºËäÈ»¹ÜµÀ»¯Ö¼ÔÚ½â¾ö´ËÎÊÌ⣬µ«ÔÚʵ¼ùÖУ¬TCPЭÒé×Ô¼º¹ÌÓеĶÓÍ·ÛÕ±ÕÎÊÌâÒÀÈ»±£´æ¡£ÈôÊÇÒ»¸öTCPÅþÁ¬ÖеÄij¸öÊý¾Ý°üɥʧ£¬Õû¸öÅþÁ¬¶¼»áÔÝÍ££¬Ö±µ½¸ÃÊý¾Ý°ü±»ÖØÐ´«Êä¡£

×ÝÈ»ºóÐøµÄÊý¾Ý°üÒѾ­µÖ´ï£¬Ò²±ØÐèÆÚ´ýÇ°ÃæµÄÊý¾Ý°ü»Ö¸´Õý³£²Å»ª¼ÌÐø´«Ê䣬ÕâÑÏÖØÓ°ÏìÁËÐÔÄÜ¡£ÔÚHTTP/1.1µÄ¹ÜµÀ?»¯ÖУ¬ÈôÊÇÒ»¸öÇëÇóµÄ´¦Öóͷ£ºÄʱ½Ï³¤£¬ÄÇôºóÐøµÄÇëÇó×ÝÈ»ÒѾ­×¼±¸ºÃ£¬Ò²±ØÐèÆÚ´ýÇ°ÃæµÄÇëÇóÍê³É²Å»ª±»·þÎñÆ÷ÏìÓ¦£¬´Ó¶øÐγɶÓÍ·ÛÕ±Õ¡£

ÅþÁ¬ÊýÄ¿Óë×ÊÔ´ÏûºÄ£ºËäÈ»³¤ÆÚÅþÁ¬ïÔÌ­ÁËTCPÎÕÊÖ´ÎÊý£¬µ«?Ôڸ߲¢·¢³¡¾°Ï£¬´ó×ڵIJ¢·¢TCPÅþÁ¬ÈÔÈ»»áÏûºÄ·þÎñÆ÷´ó×ÚµÄÄÚ´æºÍCPU×ÊÔ´£¬ÏÞÖÆÁË·þÎñÆ÷µÄ´¦Öóͷ£ÄÜÁ¦¡£

¶þ½øÖÆÓëÎı¾Ð­ÒéµÄ»ìÏý£ºHTTP/1.1ÊÇ»ùÓÚÎı¾µÄЭÒ飬Æä±¨ÎÄÒ×ÓÚÔĶÁºÍµ÷ÊÔ£¬µ«Ò²±£´æ´«ÊäЧÂʲ»Èç¶þ½øÖÆÐ­ÒéµÄÎÊÌâ¡£

ÕýÊÇΪÁËսʤÕâЩƿ¾±£¬HTTP/2ºÍHTTP/3Ó¦Ô˶øÉú¡£HTTP/2ÒýÈëÁ˶à·¸´Óã¨Multiplexing£©£¬ÔÊÐíÔÚͳһ¸öTCPÅþÁ¬Éϲ¢Ðд«Êä¶à¸öÇëÇóºÍÏìÓ¦£¬ÓÐÓõؽâ¾öÁËTCP²ãÃæµÄ¶ÓÍ·ÛÕ±Õ¡£HTTP/3Ôò½øÒ»²½½«´«Êä²ã´ÓTCPǨáãµ½QUICЭÒ飨»ùÓÚUDP£©£¬ÔÚÓ¦ÓòãʵÏÖÁ˸ü¸ßЧµÄÅþÁ¬ÊÜÀíºÍÓµÈû¿ØÖÆ£¬³¹µ×Ïû³ýÁËTCPµÄ¶ÓÍ·ÛÕ±ÕÎÊÌâ¡£

HTTP/1.1µÄÒ»Á¬¼ÛÖµ

Ö»¹ÜHTTP/2ºÍHTTP/3ÒÑÖð½¥ÆÕ¼°£¬µ«HTTP/1.1²¢Î´±»ÍêÈ«ïÔÌ­£¬ÆäÖ÷ÒªÐÔÒÀÈ»ÌåÏÖÔÚ£º

ÆÕ±éµÄ¼æÈÝÐÔ£º¾ø´ó´ó¶¼ÏÖÓÐϵͳ¡¢×°±¸?ºÍÍøÂç»ù´¡ÉèÊ©¶¼¶ÔHTTP/1.1ÓÐÓÅÒìµÄÖ§³Ö?¡£¹ØÓÚһЩÀϾÉϵͳ»ò×ÊÔ´ÊÜÏÞµÄ×°±¸£¬HTTP/1.1ÒÀÈ»ÊÇÊ×Ñ¡¡£µ÷ÊԵı㵱ÐÔ£ºHTTP/1.1µÄÎı¾ÃûÌÃʹµÃÔÚ¿ª·¢ºÍµ÷ÊÔÀú³ÌÖУ¬Ê¹ÓÃ×¥°ü¹¤¾ß£¨ÈçWireshark£©Äܹ»Ö±¹ÛµØÉó²éÇëÇóºÍÏìÓ¦ÄÚÈÝ£¬Àû±ãÎÊÌâµÄ?¶¨Î»¡£

ѧϰ»ù´¡£ºÃ÷È·HTTP/1.1ÊÇÉîÈëÃ÷È·HTTP/2ºÍHTTP/3µÄ»ù´¡¡£ÕÆÎÕÁËHTTP/1.1µÄÔ­Àí£¬¾ÍÄܸüºÃµØÃ÷ȷа汾ЭÒéµÄË¢ÐÂÖ®´¦ºÍÉè¼ÆË¼Ð÷¡£Ìض¨µÄÓ¦Óó¡¾°£ºÔÚijЩ¶ÔʵʱÐÔÒªÇ󲻸ߣ¬»òÕß¶Ô·þÎñÆ÷×ÊÔ´ÒªÇ󼫵͵ij¡¾°Ï£¬HTTP/1.1µÄ¾«Á·ÐÔ·´¶ø¿ÉÄÜÊÇÒ»ÖÖÓÅÊÆ¡£

×ܽ᣺ͨÍù¸ü¸ßÐ§ÍøÂçµÄõè¾¶

HTTP/1.1ЭÒ飬×÷Ϊ»¥ÁªÍøÍ¨Ñ¶µÄÒ»×ùÖ÷ÒªÀï³Ì±®£¬ÒÔÆäÇåÎúµÄ¿Í»§¶Ë-·þÎñÆ÷Ä£×Ó¡¢ÎÞаµÄÇëÇó-ÏìÓ¦»úÖÆ£¬ÒÔ¼°³¤ÆÚÅþÁ¬ºÍ¹ÜµÀ»¯µÈÒªº¦ÌØÕ÷£¬¹¹½¨ÁËÖ§³ÖÎÒÃÇÒ»Ñùƽ³£WebÌåÑéµÄͨѶ¹Ç¼Ü¡£Ëü²»µ«ÊÇÅþÁ¬Óû§ÓëÐÅÏ¢µÄÇÅÁº£¬¸üÊÇÍÆ¶¯WebÊÖÒÕÒ»Ö±ÏòËÞÊÀ³¤µÄÖ÷ÒªÁ¦Á¿¡£

ͨ¹ý¶ÔHTTP/1.1µÄ?ÉîÈëÃ÷È·£¬ÎÒÃDz»µ«Äܹ»¸üºÃµØÕÆÎÕWebͨѶµÄ±¾?ÖÊ£¬Ò²ÄÜΪδÀ´µÄÍøÂçÊÖÒÕÉú³¤´òϼáʵµÄ»ù´¡¡£¼´±ãÔÚHTTP/2ºÍHTTP/3ÈÕÒæÆÕ¼°µÄ½ñÌ죬HTTP/1.1µÄ¼ÛÖµÒÀÈ»½ûÖ¹ºöÊÓ¡£Ëü´ú±í×Å»¥ÁªÍøÍ¨Ñ¶µÄÒ»´ÎÖØ´ó±¼ÌÚ£¬ÊÇÎÒÃÇͨÍù¸ü¸ßЧ¡¢¸üÖÇÄÜÍøÂçʱ´úµÄÒ»¼¶õè¾¶¡£

ÔðÈα༭£º ³ÌÒæÖÐ
ÉùÃ÷£ºÖ¤È¯Ê±±¨Á¦ÕùÐÅÏ¢ÕæÊµ¡¢×¼È·£¬ÎÄÕÂÌá¼°ÄÚÈݽö¹©²Î¿¼£¬²»×é³ÉʵÖÊÐÔͶ×ʽ¨Ò飬¾Ý´Ë²Ù×÷Σº¦×Ôµ£
ÏÂÔØ¡°Ö¤È¯Ê±±¨¡±¹Ù·½APP£¬»ò¹Ø×¢¹Ù·½Î¢ÐŹ«Öںţ¬¼´¿ÉËæÊ±Ïàʶ¹ÉÊж¯Ì¬£¬¶´²ìÕþ²ßÐÅÏ¢£¬ÕÆÎղƲú»ú»á¡£
ÍøÓÑ̸ÂÛ
µÇ¼ºó¿ÉÒÔ½²»°
·¢ËÍ
ÍøÓÑ̸ÂÛ½ö¹©Æä±í´ïСÎÒ˽¼Ò¿´·¨£¬²¢²»Åúע֤ȯʱ±¨Ì¬¶È
ÔÝÎÞ̸ÂÛ
ΪÄãÍÆ¼ö
ÍøÕ¾µØÍ¼