Sačuvana datoteka još nije potvrđeno preuzimanje
Prije objavljivanja ili upotrebe provjerite sadrži li preuzimanje preko proxyja očekivanu datoteku, a ne stranicu za prijavu ili nepotpun odgovor.
Hipotetička report.xlsx ima 8 KB i otvara se kao stranica za prijavu. Program je uspješno sačuvao datoteku, ali nikada nije dobio namijenjenu tabelu. Naziv datoteke bira se lokalno; on nije dokaz o tome šta je stiglo.
Neka prihvatanje bude zaseban korak prije objavljivanja privremenog preuzimanja:
- Zahtijevajte uspješan prijenos i očekivani status odgovora. Sačuvajte grešku umjesto da bajtove zapisane prije nje smatrate potpunim.
- Uporedite sadržaj s očekivanim tipom datoteke. Stranica za prijavu ili filtriranje može vratiti 200. Content-Type može biti pogrešan, a HTML prefiks u tabeli je upozorenje koje treba istražiti. Datoteka koja počinje linijom HTTP statusa upućuje na sirovo uokvirenje odgovora.
- Provjerite kompletne sačuvane bajtove prema pouzdanom kontrolnom zbiru ili potpisu kada su dostupni. Tek nakon što potrebne provjere prođu, aplikacija bi trebala objaviti ili koristiti konačnu datoteku.
Izračunavanje heša bez očekivane vrijednosti identificira samo bajtove koje ste primili. Nepotpisani kontrolni zbir preuzet istim nepouzdanim putem može dijeliti slabost datoteke; koristite nezavisno pouzdano očekivanje.
Pazite i na poređenja veličine. HTTP klijent može dekodirati kodiranje sadržaja tokom čitanja, pa se dužina rezultirajuće datoteke može legitimno razlikovati od zaglavlja koje opisuje kodiranu poruku. Uporedite izdavačevo očekivanje sa reprezentacijom koja je zaista sačuvana.
Ako pokušaj ne uspije, zadržite privremeni izlaz samo za namjerno nastavljanje ili ga odbacite. Ostavljanje nepotpunih bajtova na konačnoj putanji prisiljava sljedeći program da nagađa jesu li upotrebljivi.