ááŒá¿áá¬á á¡áááá¡áá»ááºááŸá¬ ááŸá±á·áááºážáá»á¬ážááŸáá·áº áá±á¬ááºááœááºááŸáá»á¬ážááẠHTTP áááá¯ááá¯áá±á¬á¡ááœáẠáá¶á·ááá¯ážááŸá¯á¡ááá·áºá¡áá»áá¯ážáá»áá¯ážááᯠáá±ážáá±á¬ááºáá±á·ááŸááá±á¬áºáááºáž áá
áºáá»áááºáááºážááœáẠááá°áá®áá±á¬á¡áá¯á¶ážááŒá¯áá°áá»á¬ážáá¶á០áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠáá¯á¶áá»ááºáááºáá
áºáá¯á¡ááŒá
Ạááá·áºááœááºážáá¬ážáááºá ááŸá±á·áááºážá០áááºáá¶áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááŸáá·áº áá±á¬ááºááœááºá០áá¯ááºáá±á¬ááºáá±ááá·áº áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠáá»áááºáááºáááºá¡ááœáẠHTTP áááá¯ááá¯áá±á¬ááºáááºážáááºážááŒáá·áº ááá¯ááºážááŒá¬ážáá¬ážáá±á¬ áá¯á¶ážá
áœá²áá°áá»á¬ážá áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠáá±ážááá¯á·ááŒá®áž ááœááºážáááºáá
áºáá»áŸá±á¬áẠáá
áºáá¯ááŒá®ážáá
áºáᯠáá¯ááºááœáŸáá·áºáá±ážááá·áº áááºáááºážááŸáẠTCP áá»áááºáááºááŸá¯ááᯠáááºáá±á¬ááºáá¬ážáááºá áá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠááœá²ááŒá¬ážáááºá¡ááœáẠáá±á«ááºážá
á®áž "á¡ááŒá±á¬ááºážá¡áá¬-á¡ááŸááº" (áá±á¬ááºážááá¯ááŸá¯ááœáẠá¡áá»ááºá¡ááẠá
á¯á
á¯áá±á«ááºážá¡ááœááºá¡á
á¬ážááᯠáá¯á¶ážááŒááºáááº) ááŸáá·áº "
Frontend ááẠ"á¡ááŒá±á¬ááºážá¡áá¬-á¡ááŸááº" ááá¯áᬠáá¶á·ááá¯ážáá±ážáá±á¬áºáááºáž "ááœáŸá²ááŒá±á¬ááºáž-áá¯ááºáá¶áá«ááº- á¡ááá¯ááºážááá¯ááºáž" (á¥ááá¬á Akamai CDN ááẠá€áá²á·ááá¯á·áá¯ááºáá±á¬ááºáá²á·áááº) ááá¯á·ááá¯áẠá¡ááŒááºá¡ááŸááºá¡á¬ážááŒáá·áº áá»á áºáá»á°ááŸá¯áá«á ááŒá¿áá¬ááŒá áºáá±á«áºáá¬áá«áááºá Transfer-Encoding- ááᯠááŸá áºáááºá áá¯á¶ážááœáẠá¡ááá¯ááºážááá¯áẠáá¶á·ááá¯ážáá«áá HTTP header parserers á á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ á¡ááºá¹áá«áááºáá»á¬ážááᯠááá¯ááºááá¯ááºááŸá¯áá áºáá¯á¡ááœáẠáá¯á¶ážááá¯ááºááẠ(á¥ááá¬á ááŸá±á·áá¯á¶ážá០âTransfer-Encoding: xchunkedâá âTransfer-Encoding- chunked áá²á·ááá¯á·áá±á¬ ááá¯ááºážáá»á¬ážááᯠááŸá±á·áá¯á¶ážá០áá»á áºáá»á°ááŸá¯áá±á¬á¡áá«á â, âTransfer-Encodingâ:[tab]á¡áá¯á¶ážááá¯ááºá¡áá¯á¶ážááá¯ááºáá¯ááºááŒááºážâ, âX: X[\n]ááœáŸá²ááŒá±á¬ááºáž-áá¯ááºáá¶áá«ááº- á¡ááá¯ááºážááá¯ááºážááŒááºáá¬ážáááºâá âááœáŸá²ááŒá±á¬ááºáž-áá¯ááºááŒá±á¬ááºážááŒááºáž[\n]- á¡ááá¯ááºážááá¯ááºážâ ááá¯á·ááá¯áẠâááœáŸá²ááŒá±á¬ááºáž-áá¯ááºááŒá±á¬ááºážááŒááºáž : chunkedâ ááŸáá·áº backend ááẠáááºážááá¯á·ááᯠá¡á±á¬ááºááŒááºá áœá¬ áá¯ááºáá±á¬ááºáá«áááºá)
á€ááá á¹á ááœááºá ááá¯ááºááá¯ááºáá°ááẠ"á¡ááŒá±á¬ááºážá¡áá¬-á¡ááŸááº" ááŸáá·áº "ááœáŸá²ááŒá±á¬ááºáž-áá¯ááºááŸááºááŒááºáž- á¡ááá¯ááºážááá¯ááºážááŒááºáá¬ážáá±á¬" áá±á«ááºážá á®ážáá»á¬ážáá«ááŸááá±á¬ áá±á¬ááºážááá¯áá»ááºáá áºáá¯ááᯠáá±ážááá¯á·ááá¯ááºáá±á¬áºáááºáž "á¡ááŒá±á¬ááºážá¡áá¬-á¡áá»á¬áž" ááŸá á¡ááœááºá¡á á¬ážááẠá¡áá¯á¶ážááá¯ááºááá·áºááœááºážáááºá á¡ááœááºá¡á á¬ážááŸáá·áº áááá¯ááºáá®áá«á á¡ááŸááºááááºáááºááá¯ážááẠáá±ážáááºáááºá Frontend ááẠ"á¡ááŒá±á¬ááºážá¡áá¬-á¡ááŸááº" á¡á áá±á¬ááºážááá¯áá»ááºááᯠá á®áá¶áá±á¬ááºááœááºááŒá®áž áá±ážááá¯á·ááŒááºážááŒá áºááŒá®ážá áá±á¬ááºáá¶ááẠ"ááœáŸá²ááŒá±á¬ááºáž-áá¯ááºáá¶áá«ááº- á¡ááá¯ááºážááá¯ááºážááŒááºáá¬ážáááº" ááá¯á¡ááŒá±áá¶á ááá±á¬ááºááᯠá¡ááŒá®ážáááºááẠá á±á¬áá·áºááá¯ááºážáá±áá«áá "ááœáŸá²ááŒá±á¬ááºáž-áá¯ááºááŸááºááŒááºáž- chunked" ááᯠá¡ááŒá±áá¶á áá±áá¬áá¡áá¯á¶ážááẠá¡á á±á¬ááá¯ááºážááœáẠáá¯á¶ážááŒááºááŒá®áž ááá¯ááºááá¯ááºáá°ááẠáá±á¬ááºážááá¯áá»ááºá áá»ááºááŸááá±á¬ á¡ááŒá®ážááá¯ááºážááẠáá±á¬ááºáá±á¬ááºážááá¯ááŸá¯á á¡á ááœáẠááŒá áºáááá·áºáááºá ááá¯ááá¯áááºááŸá¬á ááá¯ááºááá¯ááºáá°ááẠá¡ááŒá¬ážáá°áá áºáŠážááá±á¬ááºážááá¯ááŸá¯áá¡á ááœáẠááááºáááá¯áá±áá¬áá»á¬ážááᯠáá°ážááœá²áá±ážááá¯á·ááá¯ááºáááºááŒá áºáááºá
á¡áá¯á¶ážááŒá¯áá¬ážáá±á¬ frontend-backend áá±á«ááºážá ááºááŸá¯ááœáẠááŒá¿áá¬ááᯠáá¯á¶ážááŒááºáááºá áááºááẠá€áá²á·ááá¯á·áá±á¬ áá±á¬ááºážááá¯áá»ááºááᯠááŸá±á·áááºážá០áá±ážááá¯á·ááá¯ááºáááº-
ááá¯á·á
Ạ/ HTTP/1.1 á¡ááŒá±á¬ááºáž
áááºáá¶áá±á¬ááºááœááºáá±ážáá°- example.com
Transfer-Encoding- á¡ááá¯ááºážááá¯ááºážááŒááºáá¬ážáááºá
áá«áááºááá·áºá¡ááŒá±á¬ááºážá¡áᬠ- ááá
1
Z
Q
áá±á¬ááºáá¶áá°ááẠáá±á¬ááºážááá¯áá»ááºááá¯áá»ááºáá»ááºážááá¯ááºáá±á¬ááºááá¯ááºáá² á¡áá¯á¶ážááá¯ááºá¡áá¯á¶ážááá¯ááºáá±áá¬ááá±á¬ááºáá¯á¶áž áá¯ááá±á¬ááºááá¯á·áá±á¬ááºááŸáááẠá
á±á¬áá·áºááá¯ááºážáá«á ááŒá¿áá¬ááŸááá±áá«áááºá ááá¯ááá¯ááŒáá·áºá
á¯á¶áá±á¬á
á
áºáá±ážááŸá¯á¡ááœááº
á á áºááŸááºáá±á¬ááá¯ááºááá¯ááºááŸá¯ááᯠáá¯ááºáá±á¬ááºááŒááºážááẠááá¯ááºááá¯ááºáá¶áááá·áºááá¯ááºáá áœááºážáááºáá»á¬ážáá±á«áºááœááºáá°áááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá Trello áááºá¡ááá®áá±ážááŸááºážááá¯ááá¯ááºááá¯ááºáá±á¬á¡áá«á áá±á¬ááºážááá¯áá»ááºáá¡á ááᯠáááºá¡á á¬ážááá¯ážááá¯ááºááẠ(âPUT /1/members/1234... x=x&csrf áá²á·ááá¯á·áá±á¬ á¡á á¬ážááá¯ážáá±áᬠ=1234&username=testzzz&bio=cakeâ) ááŸáá·áº ááŒááºáá¡ááœá²á·á¡á ááºážá¡áá¯á¶ážááŒá¯áá°á áá°ááá±á¬ááºážááá¯áá»ááºááŸáá·áº áááºážááœááºáá±á¬áºááŒáá¬ážáá±á¬ á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºáž Cookie á¡áá«á¡ááẠáááºáá±á·áá»áºáá áºá á±á¬áẠáá±ážááá¯á·áá«á saas-app.com ááœáẠááá¯ááºááá¯ááºááŸá¯á¡ááœááºá áááºážááẠáá±á¬ááºážááá¯ááŸá¯áá±á¬ááºáá»á¬ážáá²á០áá áºáá¯ááᯠá¡á á¬ážááá¯ážááŒááºážááŒáá·áº áá¯á¶á·ááŒááºááŸá¯ááœáẠJavaScript áá¯ááºááᯠá¡á á¬ážááá¯ážááẠááŒá áºááá¯ááºáááºá redhat.com ááœááºááá¯ááºááá¯ááºááŸá¯á¡ááœááºá ááá¯ááºááá¯ááºáá°ááááºááá¯ááºááá¯á· ááŒááºááœáŸááºážááẠá¡ááœááºážááá¯ááºážááá¯ááºááœááºáá°ááᯠá¡áá¯á¶ážááŒá¯áá²á·ááẠ(âPOST /search?dest=../assets/idx?redir=// áá±á¬ááºááá±á¬ááºážááá¯áá»ááºáá áºáá¯[á¡á®ážáá±ážááºááá¯áá¬ááœááºáá¬ážáááº]/ HTTP/1.1")á
á¡ááŒá±á¬ááºážá¡áá¬áá±ážááá¯á·ááŒááºážááœááºáááºáá»á¬ážá¡ááœáẠáááºážáááºážááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŒáá·áº âHost:â áá±á«ááºážá á®ážááᯠá¡á á¬ážááá¯ážááŒááºážááŒáá·áº áá±á¬ááºážááá¯áá¬ážáá±á¬ááá¯ááºááᯠááá¯ážááŸááºážá áœá¬ á¡á á¬ážááá¯ážááá¯ááºá á±áá²á·áááºá ááá¯ááºááá¯ááºááŸá¯ááẠá¡ááŒá±á¬ááºážá¡áᬠáááºááŸáºá áá áºáá»á¬ážá á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááᯠá¡ááááºááá·áºá á±áᬠááááºážáááºážáá¬ážááá·áº áá»áŸáá¯á·ááŸááºáá±áá¬ááᯠáá¯ááºáá°áááºá¡ááœááºáááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºáááºá áááºážáááºážá á¡ááœááºá¡ááááºááŸá¬ PayPal ááᯠááá¯ááºááá¯ááºááá·áº á¡ááœá²á·á¡á ááºážááŒá áºááŒá®ážá á¡á á áºá¡ááŸááºá á áºáá±ážáá±á ááºá¡ááœááºáž á¡áá¯á¶ážááŒá¯áá°áá»á¬ážáá±ážááá¯á·áá±á¬ á áá¬ážááŸááºáá»á¬ážááᯠááŒá¬ážááŒááºááá¯ááºá á±ááŒááºážááŒá áºááẠ(paypal.com/us/gifts á á¬áá»ááºááŸá¬ááœáẠJavaScript ááᯠáá¯ááºáá±á¬ááºáááºá¡ááœáẠiframe áá±á¬ááºážááá¯ááŸá¯ááᯠááŒá¯ááŒááºááœááºážáá¶áá¬ážáááºá áááºááá·áº CSP (á¡ááŒá±á¬ááºážá¡áᬠáá¯á¶ááŒá¯á¶áá±ážáá°áá«á) ááᯠáá»áá·áºáá¯á¶ážáá²á·áááº)á
á
áááºáááºá
á¬ážá
áá¬áá±á¬ááºážáá¬á 2005 ááŸá¬ ááŸááá²á·áááºá
source: opennet.ru