कच्चे HTML का उपयोग करते समय जब मैं एक फ्लास्क सर्वर पर एक फाइल पोस्ट करता हूं, तो निम्नलिखित फ्लास्क अनुरोधों से फाइल का उपयोग कर सकता हूं वैश्विक:
<form id="uploadForm" action='upload_file' role="form" method="post" enctype=multipart/form-data>
<input type="file" id="file" name="file">
<input type=submit value=Upload>
</form>
फ्लास्क में:
def post(self):
if 'file' in request.files:
....
जब मैं एक्सियोस के साथ ऐसा करने की कोशिश करता हूं तो फ्लास्क अनुरोध वैश्विक खाली है:
<form id="uploadForm" enctype="multipart/form-data" v-on:change="uploadFile">
<input type="file" id="file" name="file">
</form>
uploadFile: function (event) {
const file = event.target.files[0]
axios.post('upload_file', file, {
headers: {
'Content-Type': 'multipart/form-data'
}
})
}
यदि मैं ऊपर एक ही अपलोडफाइल फ़ंक्शन का उपयोग करता हूं, लेकिन हेडर्स जोंस को axios.post विधि से हटाता हूं, तो मुझे मेरे फ्लास्क अनुरोध ऑब्जेक्ट के रूप में मिलता है स्ट्रिंग मानों की एक सीएसवी सूची (फ़ाइल एक .csv) है।
मुझे अक्षतंतु द्वारा भेजी गई फ़ाइल ऑब्जेक्ट कैसे मिल सकती है?
v-on:change="uploadFile"
के साथ input
के बजाय form
टैग?