Ang na-save na file ay hindi pa isang beripikadong download
Bago i-publish o gamitin, tiyakin na ang download sa pamamagitan ng proxy ay naglalaman ng inaasahang file, hindi ng login page o hindi kumpletong tugon.
Ang isang hipotetikal na report.xlsx ay 8 KB at bumubukas bilang isang login page. Matagumpay na nag-save ang programa ng file, ngunit hindi nito nakuha ang inilaan na spreadsheet. Ang pangalan ng file ay pinipili nang lokal; hindi ito patunay ng dumating.
Gawing hiwalay na hakbang ang pagtanggap bago i-publish ang pansamantalang download:
- Hilingin ang matagumpay na paglilipat at ang inaasahang status ng tugon. Panatilihin ang error sa halip na ituring na kumpleto ang mga byte na naisulat bago ito.
- Ihambing ang nilalaman sa inaasahang uri ng file. Maaaring magbalik ng 200 ang isang login o filter page. Maaaring mali ang Content-Type, at ang HTML prefix sa isang spreadsheet ay babala na kailangang imbestigahan. Ang file na nagsisimula sa isang linya ng status ng HTTP ay tumutukoy sa hilaw na pag-frame ng tugon.
- I-validate ang lahat ng na-save na byte laban sa isang pinagkakatiwalaang checksum o lagda kapag mayroon. Dapat lamang i-publish o gamitin ng application ang huling file pagkatapos makapasa ang mga kinakailangang pagsusuri.
Ang pagkalkula ng hash na walang inaasahang halaga ay nakikilala lamang ang mga byte na natanggap mo. Ang isang lagda na walang pirma na nakuha sa parehong hindi pinagkakatiwalaang landas ay maaaring magbahagi ng kahinaan ng file; gumamit ng independiyenteng pinagkakatiwalaang inaasahan.
Mag-ingat din sa paghahambing ng laki. Maaaring i-decode ng HTTP client ang content encoding habang nagbabasa, kaya ang haba ng resultang file ay maaaring lehitimong naiiba sa isang header na naglalarawan sa naka-encode na mensahe. Ihambing ang inaasahan ng publisher sa representasyong aktwal na na-save.
Kung nabigo ang isang pagtatangka, itago ang pansamantalang output para lamang sa sinadyang pagpapatuloy o itapon ito. Ang pag-iiwan ng hindi kumpletong byte sa huling landas ay pumipilit sa susunod na programa na hulaan kung magagamit ang mga ito.