एक काल्पनिक report.xlsx 8 KB है और लॉगिन पेज के रूप में खुलता है। प्रोग्राम ने फ़ाइल सफलतापूर्वक सहेजी, पर उसे इच्छित स्प्रेडशीट कभी नहीं मिली। फ़ाइल नाम स्थानीय रूप से चुना जाता है; यह प्रमाण नहीं है कि क्या आया।

अस्थायी डाउनलोड प्रकाशित करने से पहले स्वीकृति को अलग चरण बनाएँ:

  1. सफल स्थानांतरण और अपेक्षित प्रतिक्रिया स्थिति आवश्यक करें। त्रुटि बनाए रखें, बजाय उससे पहले लिखे गए बाइट्स को पूर्ण मानने के।
  2. सामग्री की अपेक्षित फ़ाइल प्रकार से तुलना करें। लॉगिन या फ़िल्टर पेज 200 लौटा सकता है। Content-Type गलत हो सकता है, और स्प्रेडशीट में HTML उपसर्ग एक चेतावनी है जिसकी जाँच आवश्यक है। HTTP स्थिति पंक्ति से शुरू होने वाली फ़ाइल कच्चे उत्तर की फ़्रेमिंग की ओर संकेत करती है।
  3. उपलब्ध होने पर सहेजे गए सभी बाइट्स को विश्वसनीय चेकसम या हस्ताक्षर से सत्यापित करें। आवश्यक जाँच पूरी होने के बाद ही एप्लिकेशन अंतिम फ़ाइल प्रकाशित या उपयोग करे।

अपेक्षित मान के बिना हैश गणना केवल उन बाइट्स की पहचान करती है जो आपको मिले। उसी अविश्वसनीय मार्ग से लाया गया अहस्ताक्षरित चेकसम फ़ाइल की कमज़ोरी साझा कर सकता है; स्वतंत्र विश्वसनीय अपेक्षा का उपयोग करें।

आकार की तुलना में भी सावधान रहें। HTTP क्लाइंट पढ़ते समय सामग्री एन्कोडिंग डिकोड कर सकता है, इसलिए परिणामी फ़ाइल की लंबाई एन्कोडेड संदेश बताने वाले हेडर से वैध रूप से भिन्न हो सकती है। प्रकाशक की अपेक्षा की वास्तव में सहेजे गए निरूपण से तुलना करें।

यदि प्रयास विफल हो, तो अस्थायी आउटपुट केवल जानबूझकर फिर से शुरू करने के लिए रखें या उसे त्याग दें। अंतिम पथ पर अधूरे बाइट्स छोड़ने से अगला प्रोग्राम अनुमान लगाने को मजबूर होता है कि वे उपयोगी हैं या नहीं।

संबंधित लेख