Ikiwa PDF au lahajedwali inayodhaniwa inaanza na HTTP/1.1 200 OK, kipakuzi kilihifadhi jibu ghafi badala ya faili. Jibu hili la mfano lina baiti nne tu za maudhui:

HTTP/1.1 200 OK
Transfer-Encoding: chunked

4
DATA
0

Faili ni DATA. Mstari wa hali, vichwa, alama ya ukubwa na muundo wa kumalizia ni vya HTTP. Kuondoa idadi maalum ya baiti si salama kwa sababu urefu wa vichwa hutofautiana. Kunakili kila kitu baada ya mstari tupu wa kwanza bado kunaacha uwekaji fremu wa vipande, na majibu ya taarifa yanaweza kuja kabla ya jibu la mwisho.

Kwa upakuaji wa kawaida, badilisha kunakili kutoka soketi ghafi hadi faili kwa kiolesura cha mwili wa jibu cha mteja wa HTTP. Sanidi proksi yake, thibitisha hali ya mwisho na tiririsha mwili hadi pato la muda. Mteja hushughulikia uwekaji fremu wa ujumbe: miili iliyowekwa kikomo kwa urefu, kwa vipande (chunked) na iliyowekwa kikomo na muunganisho huhitaji uchanganuzi tofauti.

Usimbaji wa maudhui ni tabaka lingine. Amua kama unahitaji baiti zilizosimbuliwa za faili au maudhui ghafi yaliyoombwa kwa uwazi, kwa kutumia tabia iliyoandikwa ya mteja. Baiti zilizobanwa si uharibifu wa proksi kiotomatiki.

Ikiwa programu lazima ihifadhi msimbo wa kiwango cha soketi, yenyewe inawajibika kwa kanuni zote za uchanganuzi na pia ushughulikiaji wa kusoma na kuandika. Andika tu idadi ya baiti ambazo usomaji ulirudisha kweli, si uwezo wa bafa, na shughulikia uandishi wa sehemu. Vinginevyo maudhui ya zamani ya bafa yanaweza kuharibu hata mwili uliotolewa kwa usahihi.

HTTPS inahitaji zaidi ya kuondoa jibu la CONNECT: baada ya handaki kuanzishwa kwa mafanikio, anzisha TLS ya lengwa kisha uchanganue jibu la ndani la HTTP. Baiti zilizosimbwa baada ya vichwa vya proksi si faili inayoweza kupakuliwa.

Acha pato lililoshindwa au lisilo kamili chini ya jina la muda. Lichapishe tu baada ya uhamishaji na ukaguzi wa faili kufanikiwa; faili isiyo tupu haithibitishi upakuaji kamili.

Makala zinazohusiana