मैं इस का एक ईमेल क्लाइंट और भाग पर काम कर रहा हूँ मैं ईमेल शरीर को डिकोड करने की जरूरत है। मैं IMAP पैकेज का उपयोग कर रहा संदेश लाने के लिए लेकिन कोई "डिकोड" विधि है। मैं भी कोई भाग्य के साथ net/mail package या तो जाँच की। केवल हेडर के पास एक पार्सर लगता है। क्या कोई lib है जिसका मैं उपयोग कर सकता हूं?जाओ
जाओ
उत्तर
आप यह जांच सकते हैं कि artagnon/ibex
जैसी कोई परियोजना है, जो go-imap
package का उपयोग करती है, वह सुविधा प्रदान करती है।
उदाहरण, अपना artagnon/ibex/imap.go#L288-L301
परीक्षण के लिए देखें।
var body []byte
cmd, err = imap.Wait(c.UIDFetch(set, "BODY.PEEK[]"))
if (err != nil) {
fmt.Println(err.Error())
return nil
}
body = imap.AsBytes(cmd.Data[0].MessageInfo().Attrs["BODY[]"])
cmd.Data = nil
bytestring, err := json.Marshal(MessageDetail{string(body)})
if (err != nil) {
fmt.Println(err.Error())
return nil
}
return bytestring
एक बार जब आप नेट/मेल के साथ ईमेल पार्स और एक Message है, अगर शरीर है उद्धृत-मुद्रण योग्य एन्कोडेड (Content-Transfer-Encoding: quoted-printable
):
- जाओ 1.5 का उपयोग कर अगर, quotedprintable package from the standard library
- का उपयोग अगर जाओ के एक पुराने संस्करण का उपयोग कर, मेरे drop-in replacement
उदाहरण का उपयोग करें:
r := quotedprintable.NewReader(msg.Body)
body, err := ioutil.ReadAll(r) // body now contains the decoded body
यदि शरीर बेस 64 (Content-Transfer-Encoding: base64
) का उपयोग करके एन्कोड किया गया है, तो आपको encoding/base64 package का उपयोग करना चाहिए।
और अगर यह एक अलग बात है/चारसेट का उपयोग कर एन्कोड किया मुझे क्या करना चाहिए? । Http://stackoverflow.com/q/24902453/3780579 – hey
देखें [केवल अन्य एन्कोडिंग जो संभव है] (http://en.wikipedia.org/wiki/MIME#Content- ट्रांसफर- एन्कोडिंग) 7 बिट है। इस मामले में आपको कुछ भी करने की ज़रूरत नहीं है। – Ale
ठीक है ... मैं इसे आजमाने की कोशिश कर रहा हूं :) – hey
- 1. जाओ
- 2. जाओ
- 3. जाओ
- 4. जाओ
- 5. जाओ -
- 6. जाओ
- 7. जाओ
- 8. निम्नलिखित जाओ
- 9. जाओ: तार
- 10. जाओ IGrouping
- 11. जाओ समारोह
- 12. जाओ लॉकर
- 13. जाओ सामान्य
- 14. संलग्न जाओ
- 15. जाओ: सॉकेट
- 16. जाओ: अनन्य
- 17. एसक्यूएलएक्सप्शन: 'जाओ'
- 18. जाओ - स्टैक
- 19. वर्तमान चयनित विकल्प जाओ
- 20. फेसबुक ग्राफ एपीआई: जाओ
- 21. जाओ पिछले mysql2 मणि
- 22. जाओ सरणी टुकड़ा
- 23. जाओ "इस" -कीवर्ड
- 24. उदाहरण जाओ सशर्त StructureMap
- 25. हो जाओ नोड उदाहरण
- 26. बिल्ड और जाओ
- 27. जाओ पिछला दिन
- 28. जाओ इंटरैक्टिव खोल
- 29. सी # जाओ SettingsPropertyCollection
- 30. जाओ डोकर कंटेनर नाम
मैं अंत में इस परियोजना के लिए जाओ छोड़ दिया। ibex lib मदद करने के लिए प्रतीत नहीं होता है। http://stackoverflow.com/a/24903176/3780579 – hey
@ अरे ठीक है, मैंने आपका दूसरा प्रश्न उठाया है और वहां जवाब दिया है। – VonC