See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 9827|Vastuse: 0

HTTP protokolli ülekande-kodeerimine (killustatud)

[Kopeeri link]
Postitatud 24.09.2019 18:07:57 | | | |
1. Taust:

  • Püsivad ühenduse probleemid: Mittepüsivate ühenduste puhul saab brauser määratleda päringu või vastuse üksuse piirid selle järgi, kas ühendus on maas või mitte; Pidevate ühenduste puhul see lähenemine ilmselgelt ei tööta. Mõnikord, kuigi olen kõik andmed saatnud, ei tea brauser, kas avatud ühenduses tuleb uusi andmeid, nii et see lihtsalt ootab.
  • Lahenda sisupikkusega: arvuta entiteedi pikkus ja ütle teisele osapoolele pea kaudu. Brauser saab vastuse üksuse lõppu Content-Length pikkuse info järgi teada
  • Uus probleem sisupikkusega: Kuna sisupikkuse väli peab tõepoolest peegeldama entiteedi pikkust, on dünaamiliselt genereeritud sisu pikkus teadmata enne, kui sisu on loodud. Praegu, et saada täpset pikkust, saab avada ainult piisavalt suure puhvri ja oodata, kuni kogu sisu on genereeritud, enne kui arvutad. Kuid see nõuab ühelt poolt rohkem mälukoormust ja teiselt poolt paneb kliendi kauem ootama.
  • Meil on vaja uut mehhanismi, mis ei sõltu päise pikkusest ja tunneb entiteetide piire – Transfer-Encoding: chunked.

2. Ülekande-kodeerimine (killustatud)

  • Ülekande-kodeerimine on HTTP päise väli (vastuse päise väli), mis tähendab sõna-sõnalt "ülekande kodeeringut". Viimane HTTP spetsifikatsioon määratleb ainult ühe kodeerimistranspordi tüübi: chunked.
  • Killustatud ülekande kodeerimine on andmeedastuse mehhanism Hypertext Transfer Protocolis (HTTP), mis võimaldab veebiserveri poolt kliendile saadetud HTTP andmeid jagada mitmeks osaks. Plokitranspordi kodeerimine on saadaval ainult HTTP protokolli versioonis 1.1 (HTTP/1.1).
  • Andmed jagatakse jadadeks, mis saadetakse üheks või mitmeks plokkideks, et server saaks andmeid saata ilma eelnevalt teadmata saadetud sisu kogusuurust.


Spetsiifilised meetodid

  • Pärast Transfer-Encoding: chunked lisamist päisesse tähendab see, et pakett on chunked. Sellisel juhul tuleb paketis olevad üksused edastada jada plokkides.
  • Iga tükk sisaldab kuueteistkümnendsüsteemi pikkuse väärtust ja andmeid, ning pikkuse väärtus on eksklusiivne ühele reale ning pikkus ei hõlma CRLF-i selle lõpus ega CRLF-i tükeldatud andmete lõpus.
  • Viimase tüki pikkuse väärtus peab olema 0 ning vastaval tüki andmetel puudub sisu, mis näitab üksuse lõppu.




asp.net Põhitesti kood:







Eelmine:Http-protokolli sisupikkus
Järgmine:Kolm tegurit, mis panevad mind Chrome'i maha võtma
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com