As 'n vermeende PDF of sigblad met HTTP/1.1 200 OK begin, het die aflaaier 'n rou respons in plaas van die artefak gestoor. Hierdie skematiese respons bevat slegs vier grepe inhoud:

HTTP/1.1 200 OK
Transfer-Encoding: chunked

4
DATA
0

Die artefak is DATA. Die statuslyn, op-skrifte, grote-merk en terminerende struktuur behoort aan HTTP. Om 'n vaste aantal grepe te verwyder is onveilig omdat op-skriflengtes verskil. Om alles ná die eerste leë lyn te kopieer laat steeds chunk-raamwerk oor, en inligtingsantwoorde kan die finale respons voorafgaan.

Vir 'n normale aflaai, vervang die rou-sok-na-lêer-kopie met die HTTP-kliënt se response-body-koppelvlak. Stel sy proxy op, valideer die finale status en stroom die liggaam na 'n tydelike uitset. Die kliënt hanteer die boodskapraamwerk: lengte-afgebakende, chunked en verbinding-afgebakende liggame vereis verskillende ontleding.

Inhoud-enkodering is 'n verdere laag. Besluit of jy gedekodeerde artefakgrepe nodig het of eksplisiet versoekte rou inhoud, met die kliënt se gedokumenteerde gedrag. Saamgeperste grepe is nie outomaties proxy-korrupsie nie.

As die toepassing sok-vlak kode moet behou, besit dit al daardie ontledingsreëls sowel as lees- en skryfhantering. Skryf slegs die aantal grepe wat werklik deur 'n lees teruggegee is, nie die buffer se kapasiteit nie, en hanteer gedeeltelike skrywes. Anders kan verouderde bufferinhoud selfs 'n korrek onttrekte liggaam korrupteer.

HTTPS vereis meer as om 'n CONNECT-respons te stroop: ná suksesvolle tonnelopstelling, vestig bestemming-TLS en ontleed dan die binneste HTTP-respons. Die geënkripteerde grepe wat op die proxy se op-skrifte volg, is nie die aflaaibare lêer nie.

Los mislukte of onvolledige uitset onder 'n tydelike naam. Publiseer dit eers nadat die oordrag en artefakkontroles slaag; 'n nie-leë lêer bewys nie 'n volledige aflaai nie.

Verwante artikels