බාගත කළ ගොනුව HTTP තත්ත්ව රේඛාවකින් ආරම්භ වන විට
ප්රොක්සි සොකට් එකෙන් ලැබෙන සෑම බයිටයක්ම ප්රතිදාන ගොනුවට පිටපත් කරනවාට වඩා HTTP ප්රතිචාරයේ රාමුකරණය බාගත කළ ගොනුවෙන් පිටත තබන්න.
PDF එකක් හෝ පැතුරුම්පතක් යැයි සිතන ගොනුවක් HTTP/1.1 200 OK වලින් ආරම්භ වේ නම්, බාගත කරන්නා ගොනුව වෙනුවට අමු ප්රතිචාරය සුරක්ෂිත කර ඇත. මෙම ක්රමානුකූල ප්රතිචාරයේ ඇත්තේ බයිට හතරක අන්තර්ගතයක් පමණි:
HTTP/1.1 200 OK
Transfer-Encoding: chunked
4
DATA
0
ගොනුව යනු DATA ය. තත්ත්ව රේඛාව, ශීර්ෂ, ප්රමාණ සලකුණ සහ අවසන් ව්යුහය HTTP ට අයත් වේ. ශීර්ෂවල දිග වෙනස් වන බැවින් නිශ්චිත බයිට ගණනක් ඉවත් කිරීම ආරක්ෂිත නොවේ. පළමු හිස් පේළියෙන් පසු සියල්ල පිටපත් කළත් කොටස් රාමුකරණය ඉතිරි වේ, තොරතුරු ප්රතිචාර අවසාන ප්රතිචාරයට පෙර පැමිණිය හැකිය.
සාමාන්ය බාගැනීමක් සඳහා, අමු සොකට් එකේ සිට ගොනුවට පිටපත් කිරීම HTTP සේවාලාභියාගේ ප්රතිචාර-බොඩි අතුරුමුහුණතින් ප්රතිස්ථාපනය කරන්න. එහි ප්රොක්සිය වින්යාස කරන්න, අවසාන තත්ත්වය තහවුරු කරන්න, පසුව බොඩිය තාවකාලික ප්රතිදානයකට ගලා යන්න. සේවාලාභියා පණිවිඩ රාමුකරණය හසුරුවයි: දිගින් සීමා වූ, කොටස් වශයෙන් (chunked) සහ සම්බන්ධතාවයෙන් සීමා වූ බොඩි සඳහා වෙනස් විග්රහ කිරීමක් අවශ්ය වේ.
අන්තර්ගත සංකේතනය තවත් ස්ථරයකි. සේවාලාභියාගේ ලේඛනගත හැසිරීම භාවිතා කරමින් ඔබට විකේතනය කළ ගොනු බයිට අවශ්යද නැතහොත් පැහැදිලිව ඉල්ලා ඇති අමු අන්තර්ගතය අවශ්යද යන්න තීරණය කරන්න. සම්පීඩිත බයිට ස්වයංක්රීයව ප්රොක්සි දෝෂයක් නොවේ.
යෙදුමට සොකට් මට්ටමේ කේතය තබා ගැනීමට සිදු වුවහොත්, එම විග්රහ නීති සියල්ල සහ කියවීම හා ලිවීම හැසිරවීමේ වගකීම එයටම ඇත. බෆරයේ ධාරිතාව නොව කියවීමෙන් සැබවින්ම ආපසු දුන් බයිට ගණන පමණක් ලියන්න, සහ අර්ධ ලිවීම් හසුරුවන්න. නොඑසේ නම් පැරණි බෆර අන්තර්ගතය නිවැරදිව උපුටා ගත් බොඩියක් පවා විනාශ කළ හැකිය.
HTTPS සඳහා CONNECT ප්රතිචාරය ඉවත් කිරීමට වඩා අවශ්ය වේ: උමං මාර්ගය සාර්ථකව ස්ථාපිත කළ පසු, ගමනාන්ත TLS ස්ථාපිත කර පසුව ඇතුළත HTTP ප්රතිචාරය විග්රහ කරන්න. ප්රොක්සියේ ශීර්ෂවලින් පසු එන සංකේතනය කළ බයිට බාගත කළ හැකි ගොනුව නොවේ.
අසාර්ථක හෝ අසම්පූර්ණ ප්රතිදානය තාවකාලික නමක් යටතේ තබන්න. මාරු කිරීම සහ ගොනු පරීක්ෂා සාර්ථක වූ පසුව පමණක් එය ප්රකාශයට පත් කරන්න; හිස් නොවන ගොනුවක් සම්පූර්ණ බාගැනීමක් ඔප්පු නොකරයි.