解析MIME消息 [英] Parse MIME messages

查看:158
本文介绍了解析MIME消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于我的新项目,有电子邮件module.i需要显示web上的所有电子邮件信息。当我打电话给服务器我得到base64编码的MIME数据。在应用base64解码技术后,可以得到mime数据如下:



/ ********************* Mime数据启动********************************* /

  From prashant.n@geodesic.com Tue Jun 23 12:01:02 2009 
日期:星期二,2009年6月23日12:01:02 +0530
来自:Prashant R Naik< prashant.n@geodesic.com>
至:koushik.narayanan@geodesic.com
主题:这是一个测试邮件
Message-ID:< 20090623063102.GA27080@picopeta.com>
回复:Prashant R Naik< prashant.n@geodesic.com>
MIME版本:1.0
内容类型:multipart / mixed; border =ReaqsoxgOBHFXBhH
内容处理:inline
用户代理:Mutt / 1.5.18(2008-05-17)
状态:RO
内容长度:1912
行:52


--ReaqsoxgOBHFXBhH
内容类型:text / plain; charset = us-ascii
内容处理:inline

测试邮件。
由prashant发起

问候,
-
Prashant R Naik
主要技术专家| Symbian& Web2.0
Geodesic Limited | www.geodesic.com
电话:+ 91-80-66551000

--ReaqsoxgOBHFXBhH
内容类型:image / gif
内容处理:附件;文件名= trash.gif
内容传输编码:的base64

R0lGODlhEAAQANUoADJ8wTqU2DmR1TqV2DN9wTSBxTWFyTaGyTJ9wTWGyTaKzjmS1TOAxTuV
2DaFyTN8wDiN0jiO0jSAxTeKzjqS1DN8wTqR1TWFyjB4vTOBxTmO0TmS1DaKzTeJzTqV1zSA
xDJ8wDqS1TeKzTF4vDF4vTiO0f /// zuX2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACgALAAA
AAAQABAAAAaDQNRpSCwWhcakcsk8mZ5Qpik5pUKvT2W1uDVWp + BiYNAImAZmz / lcDoQEFoFp
QTFtTPKFQLCAREolJiURJhCCJhqAJRMiIhwmjSYdJgqUjQoODgkJJgecBp0mBgYXBx8ZBQxY
UAUSDAUACLEPDwgEAAAEIBUEtygkIyMkwMMYw8EjKEEAOw ==

--ReaqsoxgOBHFXBhH
内容类型:图像/ JPEG
含量处置:附件;文件名= bx.jpg
含量传输编码:BASE64

/ 9J / 4AAQSkZJRgABAQEASABIAAD / 2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH / 2wBDAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH / wAAR
CAAUAAoDAREAAhEBAxEB / 8QAFQABAQAAAAAAAAAAAAAAAAAAAAn / xAAYEAEAAwEAAAAAAAAA
AAAAAAAAGWen5 // EABQBAQAAAAAAAAAAAAAAAAAAAAD / xAAUEQEAAAAAAAAAAAAAAAAAAAAA
/ 9oADAMBAAIRAxEAPwCb4AJHym0Vp3PQJTaK07noJHgA / 9K =

--ReaqsoxgOBHFXBhH
内容类型:图像/ PNG
内容处理:附件;文件名= day_bg.png
含量传输编码:BASE64

iVBORw0KGgoAAAANSUhEUgAAAGQAAAApCAYAAADDJIzmAAAABmJLR0QA / WD / AP + gvaeTAAAA
CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AwCCS0kTriU2QAAAB10RVh0Q29tbWVudABD
cmVhdGVkIHdpdGggVGhlIEdJTVDvZCVuAAAAXElEQVR42u3bQQEAMAgDMZiqiZtP5AwbfeQk
NO / WvPtLMR0TABEQIAICRECACAgQAREQIAICRECACAgQAREQIAICRECACAgQAREQIAICRECA
CAgQARGQ7NpPPasFT + 0FZPjBRwYAAAAASUVORK5CYII =

--ReaqsoxgOBHFXBhH--

/ ********************* Mime数据结束************************* ********** /



现在的问题是我必须解析这些数据并在我的应用程序中使用它,因为这个数据不是一个xml所以很难解析它(因为解析一些标签很容易)。任何知道如何解析mime数据的人都可以使用erlang来解析这些数据。



提前谢谢

解决方案

gen_smtp erlang_smtp 包含解析mime邮件的代码。


For my new project which has email module.i need to show all the email information on web.when i m making a call to server i m getting the base64 encoded mime data. after applying base64 decoding technique i m getting the mime data as follows:

/*********************Mime data start ***********************************/

From prashant.n@geodesic.com Tue Jun 23 12:01:02 2009
Date: Tue, 23 Jun 2009 12:01:02 +0530
From: Prashant R Naik <prashant.n@geodesic.com>
To: koushik.narayanan@geodesic.com
Subject: This is a test mail
Message-ID: <20090623063102.GA27080@picopeta.com>
Reply-To: Prashant R Naik <prashant.n@geodesic.com>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="ReaqsoxgOBHFXBhH"
Content-Disposition: inline
User-Agent: Mutt/1.5.18 (2008-05-17)
Status: RO
Content-Length: 1912
Lines: 52


--ReaqsoxgOBHFXBhH
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Test mail.
Initiated by prashant

Regards,
-- 
Prashant R Naik
Principal Technologist | Symbian & Web2.0
Geodesic Limited | www.geodesic.com
Tel: +91-80-66551000

--ReaqsoxgOBHFXBhH
Content-Type: image/gif
Content-Disposition: attachment; filename="trash.gif"
Content-Transfer-Encoding: base64

R0lGODlhEAAQANUoADJ8wTqU2DmR1TqV2DN9wTSBxTWFyTaGyTJ9wTWGyTaKzjmS1TOAxTuV
2DaFyTN8wDiN0jiO0jSAxTeKzjqS1DN8wTqR1TWFyjB4vTOBxTmO0TmS1DaKzTeJzTqV1zSA
xDJ8wDqS1TeKzTF4vDF4vTiO0f///zuX2gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACgALAAA
AAAQABAAAAaDQNRpSCwWhcakcsk8mZ5Qpik5pUKvT2W1uDVWp+BiYNAImAZmz/lcDoQEFoFp
QTFtTPKFQLCAREolJiURJhCCJhqAJRMiIhwmjSYdJgqUjQoODgkJJgecBp0mBgYXBx8ZBQxY
UAUSDAUACLEPDwgEAAAEIBUEtygkIyMkwMMYw8EjKEEAOw==

--ReaqsoxgOBHFXBhH
Content-Type: image/jpeg
Content-Disposition: attachment; filename="bx.jpg"
Content-Transfer-Encoding: base64

/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAAR
CAAUAAoDAREAAhEBAxEB/8QAFQABAQAAAAAAAAAAAAAAAAAAAAn/xAAYEAEAAwEAAAAAAAAA
AAAAAAAAGWen5//EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA
/9oADAMBAAIRAxEAPwCb4AJHym0Vp3PQJTaK07noJHgA/9k=

--ReaqsoxgOBHFXBhH
Content-Type: image/png
Content-Disposition: attachment; filename="day_bg.png"
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAAGQAAAApCAYAAADDJIzmAAAABmJLR0QA/wD/AP+gvaeTAAAA
CXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH2AwCCS0kTriU2QAAAB10RVh0Q29tbWVudABD
cmVhdGVkIHdpdGggVGhlIEdJTVDvZCVuAAAAXElEQVR42u3bQQEAMAgDMZiqiZtP5AwbfeQk
NO/WvPtLMR0TABEQIAICRECACAgQAREQIAICRECACAgQAREQIAICRECACAgQAREQIAICRECA
CAgQARGQ7NpPPasFT+0FZPjBRwYAAAAASUVORK5CYII=

--ReaqsoxgOBHFXBhH--

/*********************Mime data end ***********************************/

now the problem is i have to parse this data and use it in my application.since this data is not a xml so it difficult to parse it (because parsing with some tag is easy).so any one who knows how to parse mime data help be.i m using erlang to parse this data.

Thank you in advance

解决方案

gen_smtp and erlang_smtp contain code for parsing mime messages.

这篇关于解析MIME消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆