Ajax XMLHttpRequest के साथ फ़ाइलें अपलोड करना: "कोई मल्टीपार्ट सीमा नहीं मिली" त्रुटि का निवारण करना
XMLHttpRequest का उपयोग करके फ़ाइल अपलोड करने का प्रयास करते समय, आप कर सकते हैं "अनुरोध अस्वीकार कर दिया गया क्योंकि कोई मल्टीपार्ट सीमा नहीं मिली थी" जैसी त्रुटि का सामना करना पड़ा। यह समस्या तब उत्पन्न होती है जब फ़ाइल को मल्टीपार्ट/फॉर्म-डेटा अनुरोध के रूप में सही ढंग से नहीं भेजा जाता है।
एक सामान्य गलती फ़ाइल को सीधे XMLHttpRequest ऑब्जेक्ट में संलग्न करना है, जैसा कि कोड में दिखाया गया है:
xhr.file = file; // not necessary if you create scopes like this
यह विधि गलत है। इसके बजाय, फ़ाइल को फॉर्मडाटा ऑब्जेक्ट में लपेटा जाना चाहिए, जो उचित मल्टीपार्ट/फॉर्म-डेटा अनुरोध पेलोड का निर्माण करता है:
var formData = new FormData(); formData.append("thefile", file);
एक बार जब फ़ाइल फॉर्मडाटा ऑब्जेक्ट में जुड़ जाती है, तो आप xhr.send(formData); अनुरोध सबमिट करने के लिए. PHP का उपयोग करने पर फ़ाइल $_FILES['thefile'] के भीतर सर्वर-साइड पर पहुंच योग्य होगी।
याद रखें कि आप Ajax XMLHttpRequest के साथ फ़ाइल अपलोड पर आगे के मार्गदर्शन के लिए MDC और मोज़िला हैक डेमो जैसे संसाधनों से परामर्श ले सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3