नेट/http और Mux का उपयोग करके गोलांग में अपलोड की गई फ़ाइलें प्राप्त करना
परिचय
एक सर्वर बनाना जो संभालता है वेब विकास में फ़ाइल अपलोड एक सामान्य कार्य है। गोलांग में, आप फ़ाइल अपलोड को कुशलतापूर्वक प्रबंधित करने के लिए नेट/http पैकेज का उपयोग कर सकते हैं। लोकप्रिय मक्स राउटर का उपयोग करके गोलांग नेट/http सर्वर में अपलोड की गई फ़ाइलों को कैसे प्राप्त करें, इस पर एक व्यापक मार्गदर्शिका यहां दी गई है।
फ़ाइल अपलोड को कार्यान्वित करना
अपने सर्वर में फ़ाइल अपलोड कार्यक्षमता को सक्षम करने के लिए, आपको निम्नलिखित परिवर्तन करने की आवश्यकता है:
एक समापन बिंदु बनाएं जो आने वाली फ़ाइल अपलोड अनुरोधों को संभालता है। इस समापन बिंदु को राउटर वेरिएबल में परिभाषित किया जाना चाहिए:
router. Path("/upload"). Methods("POST"). HandlerFunc(UploadFile)
UploadFile फ़ंक्शन में, आपको मल्टीपार्ट फॉर्म डेटा को पार्स करने की आवश्यकता है। अपलोड की गई फ़ाइल यहीं उपलब्ध होगी:
func UploadFile(w http.ResponseWriter, r *http.Request) { err := r.ParseMultipartForm(5 * 1024 * 1024) if err != nil { panic(err) } // Retrieve the file from the multipart form file, header, err := r.FormFile("fileupload") if err != nil { panic(err) } defer file.Close() // Do something with the uploaded file, such as storing it in a database or processing it }
फ़ाइल को संसाधित करने के लिए, आप इसकी सामग्री को एक बफर में पढ़ सकते हैं और आवश्यकतानुसार इसे संभाल सकते हैं। यहाँ एक उदाहरण है:
var buf bytes.Buffer io.Copy(&buf, file) contents := buf.String() fmt.Println(contents)
यदि आप cURL का उपयोग करके फ़ाइल को मल्टीपार्ट फॉर्म डेटा के रूप में भेज रहे हैं, तो सही पैरामीटर प्रदान करना सुनिश्चित करें:
curl http://localhost:8080/upload -F "fileupload=[email protected]"
द्वारा इन चरणों का पालन करके, आप Mux का उपयोग करके अपने गोलांग नेट/http सर्वर में अपलोड की गई फ़ाइलें सफलतापूर्वक प्राप्त कर सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3