"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > गोलांग में HTTP अनुरोध से फ़ाइलों और JSON डेटा को कैसे पार्स करें?

गोलांग में HTTP अनुरोध से फ़ाइलों और JSON डेटा को कैसे पार्स करें?

2024-11-13 को प्रकाशित
ब्राउज़ करें:920

How to Parse Files and JSON Data from an HTTP Request in Golang?

गो में HTTP अनुरोध से फ़ाइलों और JSON डेटा को पार्स करना

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

समाधान

इस समस्या को हल करने के लिए, आपको फ़ाइल और JSON डेटा दोनों को अलग-अलग संसाधित करने की आवश्यकता है। http.(*Request).MultipartReader() का उपयोग करके और NextPart() का उपयोग करके भागों पर पुनरावृत्ति करके, आप प्रत्येक तत्व को निकाल और पार्स कर सकते हैं।

चरण 1: एक मल्टीपार्ट रीडर बनाएं

श्रीमान, त्रुटि := r.MultipartReader() यदि त्रुटि !=शून्य { http.Error(w, err.Error(), http.StatusInternalServerError) वापस करना }

चरण 2: प्रत्येक भाग को संसाधित करें
mr, err := r.MultipartReader()
if err != nil {
    http.Error(w, err.Error(), http.StatusInternalServerError)
    return
}

part, err := mr.NextPart() अगर गलती == io.EOF { तोड़ना } यदि त्रुटि !=शून्य { http.Error(w, err.Error(), http.StatusInternalServerError) वापस करना }

चरण 3: फ़ाइल डेटा निकालें
part, err := mr.NextPart()
if err == io.EOF {
    break
}
if err != nil {
    http.Error(w, err.Error(), http.StatusInternalServerError)
    return
}

आउटफ़ाइल, त्रुटि := os.Create(./docs/" भाग.फ़ाइलनाम()) यदि त्रुटि !=शून्य { http.Error(w, err.Error(), http.StatusInternalServerError) वापस करना } आउटफ़ाइल को स्थगित करें। बंद करें() _, त्रुटि = io.कॉपी(आउटफ़ाइल, भाग) यदि त्रुटि !=शून्य { http.Error(w, err.Error(), http.StatusInternalServerError) वापस करना }

चरण 4: JSON डेटा को पार्स करें
outfile, err := os.Create("./docs/"   part.FileName())
if err != nil {
    http.Error(w, err.Error(), http.StatusInternalServerError)
    return
}
defer outfile.Close()

_, err = io.Copy(outfile, part)
if err != nil {
    http.Error(w, err.Error(), http.StatusInternalServerError)
    return
}

jsonDecoder := json.NewDecoder(भाग) त्रुटि = jsonDecoder.Decode(&doc) यदि त्रुटि !=शून्य { http.Error(w, err.Error(), http.StatusInternalServerError) वापस करना }

चरण 5: पोस्ट-प्रोसेसिंग
jsonDecoder := json.NewDecoder(part)
err = jsonDecoder.Decode(&doc)
if err != nil {
    http.Error(w, err.Error(), http.StatusInternalServerError)
    return
}
विज्ञप्ति वक्तव्य यह आलेख यहां पुनर्मुद्रित है: 1729747542 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.कॉम से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3