HTTPÍ·²¿£¨Header£©×÷ΪHTTPÇëÇóºÍÏìÓ¦µÄÖØÒª×é³É²¿·Ö£¬²»½ö³ÐÔØ×ſͻ§¶ËÓë·þÎñÆ÷Ö®¼äµÄÔªÊý¾Ý£¬»¹°üº¬ÁËÖîÈçÈÏÖ¤ÐÅÏ¢¡¢ÄÚÈÝÀàÐÍ¡¢»º´æ¿ØÖƵȹؼüÖ¸Áî
Òò´Ë£¬¶ÔÓÚϵͳ¹ÜÀíÔ±¡¢¿ª·¢ÈËÔ±ÒÔ¼°°²È«Ñо¿ÈËÔ±¶øÑÔ£¬ÕÆÎÕÔÚLinux»·¾³Ï¼àÌýºÍ·ÖÎöHTTP HeaderµÄ¼¼ÄÜ£¬ÊÇÉîÈëÀí½âÍøÂçͨÐÅ¡¢ÓÅ»¯ÍøÕ¾ÐÔÄÜ¡¢ÅŲé¹ÊÕÏÄËÖÁ½øÐа²È«Éó¼ÆµÄ±Ø±¸ÄÜÁ¦
±¾ÎĽ«ÉîÈë̽ÌÖÈçºÎÔÚLinuxϵͳÉϸßЧ¼àÌýHTTP Header£¬°üÀ¨¹¤¾ßÑ¡Ôñ¡¢Êµ¼ù²½ÖèÒÔ¼°°¸Àý·ÖÎö£¬Ö¼ÔÚΪ¶ÁÕßÌṩһÌ×ÍêÕûµÄ½â¾ö·½°¸
Ò»¡¢ÎªÊ²Ã´¼àÌýHTTP HeaderÖÁ¹ØÖØÒª 1.ÐÔÄÜÓÅ»¯£ºÍ¨¹ý·ÖÎöHTTP HeaderÖеÄ`Content-Type`¡¢`Accept-Encoding`µÈ×ֶΣ¬¿ÉÒÔÓÅ»¯×ÊÔ´µÄѹËõÓë´«Êä²ßÂÔ£¬¼õÉÙ´ø¿íÕ¼Ó㬼ӿìÒ³Ãæ¼ÓÔØËÙ¶È
2.°²È«É󼯣ºHTTP HeaderÖеÄ`Cookie`¡¢`Authorization`µÈÃô¸ÐÐÅÏ¢Èô´¦Àí²»µ±£¬¿ÉÄܵ¼Ö°²È«Â©¶´
¼àÌý²¢·ÖÎöÕâЩHeader£¬ÓÐÖúÓÚ¼°Ê±·¢ÏÖ²¢ÐÞ¸´Ç±Ôڵݲȫ·çÏÕ
3.¹ÊÕÏÅŲ飺HTTP״̬Âë¡¢ÖØ¶¨ÏòÐÅÏ¢µÈHeaderÄÚÈÝ£¬ÊÇÕï¶ÏÍøÂçÇëÇóʧ°Ü¡¢×ÊԴδÕÒµ½µÈÎÊÌâµÄ¹Ø¼üÏßË÷
4.API¹ÜÀí£º¶ÔÓÚÒÀÀµRESTful APIµÄ·þÎñ£¬¼àÌýHTTP HeaderÖеÄ`API-Key`¡¢`User-Agent`µÈÐÅÏ¢£¬ÓÐÖúÓÚʵÏÖAPI·ÃÎÊ¿ØÖƺͰ汾¹ÜÀí
¶þ¡¢LinuxϼàÌýHTTP HeaderµÄ¹¤¾ßÑ¡Ôñ ÔÚLinuxϵͳÖУ¬ÓжàÖÖ¹¤¾ß¿ÉÓÃÓÚ¼àÌýºÍ·ÖÎöHTTP Header£¬ÒÔÏÂÊǼ¸¸ö³£ÓõÄÑ¡Ôñ£º 1.tcpdump£ºÒ»¸öÇ¿´óµÄÃüÁîÐÐÍøÂçÊý¾Ý°ü·ÖÎö¹¤¾ß£¬ËäÈ»Ö÷ÒªÓÃÓÚ²¶»ñÍøÂçÁ÷Á¿£¬µ«½áºÏWiresharkµÈ¹¤¾ß£¬¿ÉÒÔ½âÎö³öHTTP HeaderÐÅÏ¢
2.ngrep£º»ùÓÚPCAPµÄÍøÂçÊý¾Ý°ü·ÖÎö¹¤¾ß£¬×¨ÎªÎı¾Ä£Ê½Éè¼Æ£¬ÄÜʵʱÏÔÊ¾ÍøÂçÁ÷Á¿ÖеÄHTTPÇëÇóºÍÏìӦϸ½Ú£¬°üÀ¨HeaderÄÚÈÝ
3.Wireshark£ºËäΪ¿çƽ̨Èí¼þ£¬µ«ÔÚLinuxÏÂÔËÐÐÁ¼ºÃ£¬ÌṩͼÐλ¯½çÃæ£¬Ö§³ÖÉî¶ÈÊý¾Ý°ü·ÖÎö£¬ÊÇ·ÖÎöHTTPÐÒéµÄÊ×Ñ¡¹¤¾ßÖ®Ò»
4.curl£ºÃüÁîÐй¤¾ß£¬ÓÃÓÚ·¢ËÍHTTPÇëÇó²¢½ÓÊÕÏìÓ¦
ͨ¹ý`--verbose`»ò`--header`Ñ¡Ï¿ÉÖ±½Ó²é¿´HTTP Header
5.httpie£ºÒ»¸öÓû§ÓѺõÄÃüÁîÐÐHTTP¿Í»§¶Ë£¬ÒÔ¸üÈËÐÔ»¯µÄ·½Ê½Õ¹Ê¾HTTPÇëÇóºÍÏìÓ¦£¬°üÀ¨Header
Èý¡¢Êµ¼ù²½Ö裺ʹÓÃngrep¼àÌýHTTP Header ÒÔngrepΪÀý£¬ÑÝʾÈçºÎÔÚLinuxϵͳÖмàÌýHTTP Header
1.°²×°ngrep£º ´ó¶àÊýLinux·¢ÐаæµÄ°ü¹ÜÀíÆ÷¶¼ÌṩÁËngrepµÄ°²×°°ü
ÒÔDebian/UbuntuΪÀý£¬Ê¹ÓÃÒÔÏÂÃüÁî°²×°£º bash sudo apt-get update sudo apt-get install ngrep 2.ÔËÐÐngrep¼àÌýHTTPÁ÷Á¿£º ¼ÙÉèÄãÏë¼àÌýÍøÂç½Ó¿Ú`eth0`ÉϵÄHTTPÁ÷Á¿£¬¿ÉÒÔʹÓÃÒÔÏÂÃüÁ bash sudo ngrep -d eth0 -t port 80 ÕâÀ`-d eth0`Ö¸¶¨ÁËÍøÂç½Ó¿Ú£¬`-t`ʹÊä³öʱ¼ä´ÁΪ¿Õ£¨¿ÉÑ¡£©£¬`port 80`Ö¸¶¨¼àÌýHTTPÐÒéµÄĬÈ϶˿Ú
3.·ÖÎöHTTP Header£º µ±ngrep²¶»ñµ½HTTPÁ÷Á¿Ê±£¬»áÔÚÖÕ¶ËʵʱÏÔʾÇëÇóºÍÏìÓ¦µÄÕªÒªÐÅÏ¢
Äã¿ÉÒÔ¿´µ½ÇëÇó·½·¨£¨GET¡¢POSTµÈ£©¡¢URL¡¢HTTP°æ±¾ÒÔ¼°²¿·ÖHeaderÄÚÈÝ
Òª²é¿´ÍêÕûµÄHeaderÐÅÏ¢£¬Äã¿ÉÄÜÐèÒª½«²¶»ñµÄÊý¾Ý°üµ¼³öµ½Îļþ£¬È»ºóʹÓÃWiresharkµÈ¹¤¾ß½øÐÐÏêϸ·ÖÎö
4.¸ß¼¶Ó÷¨£º ngrepÖ§³ÖʹÓñí´ïʽ¹ýÂËÌØ¶¨µÄHTTPÇëÇó»òÏìÓ¦
ÀýÈ磬ҪֻÏÔʾ°üº¬Ìض¨User-AgentµÄÇëÇ󣬿ÉÒÔʹÓ㺠bash sudo ngrep -d eth0^(G|P)....User-Agent:.Mozilla port 80 ÕâÀïµÄÕýÔò±í´ïʽ`^(G|P)....User-Agent:.Mozilla`ÓÃÓÚÆ¥ÅäGET»òPOSTÇëÇó£¬ÇÒUser-Agent×ֶΰüº¬¡°Mozilla¡±µÄÐÐ
ËÄ¡¢°¸Àý·ÖÎö£ºÓÅ»¯ÍøÕ¾ÐÔÄÜ ¼ÙÉèÄãÊÇÒ»¼ÒµçÉÌÍøÕ¾µÄÔËάÈËÔ±£¬½üÆÚ·¢ÏÖÍøÕ¾¼ÓÔØËٶȱäÂý£¬Óû§·´À¡Æµ·±
ͨ¹ý¼àÌýHTTP Header£¬Äã·¢ÏÖ´óÁ¿ÇëÇóÖÐ`Accept-Encoding`×Ö¶Îȱʧ£¬µ¼Ö·þÎñÆ÷δ¶ÔÄÚÈݽøÐÐGzipѹËõ
1.È·ÈÏÎÊÌ⣺ ʹÓÃÉÏÊö·½·¨¼àÌýHTTPÇëÇ󣬷¢ÏÖ²¿·ÖÓû§´úÀí£¨ÓÈÆäÊÇijЩ¾É°æä¯ÀÀÆ÷»òÅÀ³æ£©Î´·¢ËÍ`Accept-Encoding: gzip,deflate`£¬µ¼Ö·þÎñÆ÷ĬÈÏ·¢ËÍδѹËõµÄÄÚÈÝ
2.½â¾öÎÊÌ⣺ -·þÎñÆ÷¶ËÅäÖ㺵÷Õû·þÎñÆ÷ÅäÖ㬼´Ê¹¿Í»§¶ËδÇëÇóѹËõ£¬Ò²Ä¬ÈÏ·¢ËÍGzipѹËõµÄÄÚÈÝ£¨Ð迼ÂǼæÈÝÐÔ£©
-¿Í»§¶ËÒýµ¼£º¶ÔÓÚÀϾÉä¯ÀÀÆ÷Óû§£¬Í¨¹ýÍøÕ¾¹«¸æ»ò×Ô¶¯Ìø×ªÒ³ÃæÌáʾÉý¼¶ä¯ÀÀÆ÷
3.Ñé֤Ч¹û£º ÔٴμàÌýHTTPÁ÷Á¿£¬È·ÈÏËùÓÐÏìÓ¦¾ù°üº¬`Content-Encoding:gzip`£¬²¢Í¨¹ýÍøÕ¾ÐÔÄÜ¼à¿Ø¹¤¾ßÑéÖ¤¼ÓÔØËÙ¶ÈÊÇ·ñÓÐËùÌáÉý
Îå¡¢×ܽá ÔÚLinux»·¾³Ï¼àÌýHTTP Header£¬ÊÇÀí½âÍøÂçͨÐÅϸ½Ú¡¢ÓÅ»¯ÍøÕ¾ÐÔÄÜ¡¢±£Õϰ²È«µÄÖØÒª¼¼ÄÜ
ͨ¹ýÑ¡ÔñºÏÊʵŤ¾ß£¬Èçngrep¡¢Wireshark¡¢curlµÈ£¬½áºÏ¾ßÌåµÄʵ¼ù²½ÖèºÍ°¸Àý·ÖÎö£¬ÎÒÃÇ¿ÉÒÔÓÐЧµØ²¶»ñ¡¢·ÖÎöHTTP Header£¬´Ó¶ø½â¾öʵ¼ÊÎÊÌ⣬ÌáÉý·þÎñÖÊÁ¿
Ëæ×ż¼ÊõµÄ²»¶Ï·¢Õ¹£¬ÐµĹ¤¾ßºÍ·½·¨²»¶ÏÓ¿ÏÖ£¬³ÖÐø¹Ø×¢ºÍѧϰ£¬ÊDZ£³Ö¼¼ÄܸüеĹؼü
Ï£Íû±¾ÎÄÄÜΪÄãÔÚLinuxϼàÌýHTTP HeaderµÄʵ¼ùÌṩÓмÛÖµµÄ²Î¿¼