Հիպոթետիկ report.xlsx-ը 8 KB է և բացվում է որպես մուտքի էջ։ Ծրագիրը ֆայլը հաջողությամբ պահեց, բայց այդպես էլ չստացավ նախատեսված աղյուսակը։ Ֆայլի անունը ընտրվում է տեղում. այն ապացույց չէ, թե ինչ է ժամանել։

Ընդունումը դարձրեք առանձին քայլ մինչև ժամանակավոր ներբեռնումը հրապարակելը.

  1. Պահանջեք հաջող փոխանցում և սպասվող պատասխանի կարգավիճակ։ Պահպանեք սխալը՝ դրանից առաջ գրված բայթերը ամբողջական համարելու փոխարեն։
  2. Համեմատեք բովանդակությունը սպասվող ֆայլի տիպի հետ։ Մուտքի կամ զտիչի էջը կարող է վերադարձնել 200։ Content-Type-ը կարող է սխալ լինել, իսկ աղյուսակում HTML նախածանցը նախազգուշացում է, որը պահանջում է ուսումնասիրություն։ HTTP կարգավիճակի տողով սկսվող ֆայլը փոխարենը ցույց է տալիս հում պատասխանի շրջանակավորում։
  3. Ստուգեք պահված ամբողջ բայթերը վստահելի ստուգիչ գումարով կամ ստորագրությամբ, երբ այն հասանելի է։ Միայն պահանջվող ստուգումներն անցնելուց հետո ծրագիրը պետք է հրապարակի կամ օգտագործի վերջնական ֆայլը։

Հեշի հաշվարկը առանց սպասվող արժեքի նույնականացնում է միայն ստացած բայթերը։ Նույն անվստահելի ուղով բերված չստորագրված ստուգիչ գումարը կարող է կիսել ֆայլի թուլությունը. օգտագործեք անկախ վստահելի սպասում։

Զգույշ եղեք նաև չափերի համեմատություններում։ HTTP հաճախորդը կարդալիս կարող է վերծանել բովանդակության կոդավորումը, ուստի ստացված ֆայլի երկարությունը կարող է օրինականորեն տարբերվել կոդավորված հաղորդագրությունը նկարագրող վերնագրից։ Համեմատեք հրատարակչի սպասումը փաստացի պահված ներկայացման հետ։

Եթե փորձը ձախողվի, պահեք ժամանակավոր արդյունքը միայն գիտակցված շարունակության համար կամ դեն նետեք այն։ Վերջնական ուղում թերի բայթեր թողնելը ստիպում է հաջորդ ծրագրին գուշակել՝ արդյոք դրանք օգտագործելի են։

Առնչվող հոդվածներ