如何使用Microsoft Graph API获取Office365邮件的MIME内容?

时间:2016-11-14 05:54:48

标签: office365 microsoft-graph eml

如何使用Microsoft Graph API获取Office365邮件的MIME内容,以便我可以创建EML文件?

或者是否有其他方法可以使用Microsoft图形API创建Office365中找到的邮件的EML文件?

我已经尝试过使用EWS API但想要使用Graph API。

提前致谢

3 个答案:

答案 0 :(得分:4)

目前,Graph或Exchange REST中不支持MIME。使用EWS。

答案 1 :(得分:1)

Microsoft Graph具有返回MimeMessage的API。那是

https://graph.microsoft.com/beta/me/messages/{Id}/$value

您应该用消息ID替换ID。然后读取响应作为流,然后将其加载到MimeMessage。

答案 2 :(得分:0)

按照(Official documentation

MIME是行业电子邮件标准。许多电子邮件应用程序以MIME格式创建邮件,并将其保存在扩展名为.EML的文件中。

即使Outlook不会以MIME格式保存邮件,也可以通过两种方式获取MIME格式的Outlook邮件正文:

  

您可以将$value段附加到该段的get-message操作上   信息。如果邮件附加到Outlook项目或组帖子中,   您可以将$ value段附加到该字段的get-attachment操作中   项目或群组信息。

GET /users/{id}/messages/{id}/$value

如果该邮件附加到用户邮箱中的另一封邮件:

GET /users/{id}/messages/{id}/attachments/{id}/$value

示例

下面是一个示例,该示例请求已登录用户的邮箱中的邮件及其MIME内容返回。

GET /me/messages/4aade2547798441eab5188a7a2436bc1/$value

以下是响应。 MIME内容以MIME-Version头开头。

        Received: from contoso.com (10.194.241.197) by 
    contoso.com (10.194.241.197) with Microsoft 
    SMTP Server (version=TLS1_2, 
    cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1374.0 via Mailbox 
    Transport; Mon, 4 Sep 2017 03:00:08 -0700 
    Received: from contoso.com (10.194.241.197) by 
    contoso.com (10.194.241.197) with Microsoft 
    SMTP Server (version=TLS1_2, 
    cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1374.0; Mon, 4 Sep 
    2017 03:00:07 -0700 
    Received: from contoso.com 
    (fe80::5bf:5059:4ca0:5017) by contoso.com 
    (fe80::5bf:5059:4ca0:5017%12) with mapi id 15.01.1374.000; Mon, 4 Sep 2017 
    03:00:01 -0700 
    From: Administrator <admin@contoso.com> 
    To: Administrator <admin@contoso.com> 
    Subject: This email has attachment. 
    Thread-Topic: This email has attachment. 
    Thread-Index: AQHTJWSHSywMzSz8o0OJud48nG50GQ== 
    Date: Mon, 4 Sep 2017 10:00:00 +0000 
    Message-ID: 
                    <4aade2547798441eab5188a7a2436bc1@contoso.com> 
    Accept-Language: en-US 
    Content-Language: en-US 
    X-MS-Exchange-Organization-AuthAs: Internal 
    X-MS-Exchange-Organization-AuthMechanism: 04 
    X-MS-Exchange-Organization-AuthSource: 
                    contoso.com 
    X-MS-Has-Attach: yes 
    X-MS-Exchange-Organization-Network-Message-Id: 
                    0ffdb402-ec03-42c8-5d32-08d4f37bb517 
    X-MS-Exchange-Organization-SCL: -1 
    X-MS-TNEF-Correlator: 
    X-MS-Exchange-Organization-RecordReviewCfmType: 0 
    x-ms-publictraffictype: Emai

    ```http
    MIME-Version: 1.0 
    Content-Type: multipart/mixed; 
                    boundary="_004_4aade2547798441eab5188a7a2436bc1contoso_" 

    --_004_4aade2547798441eab5188a7a2436bc1contoso_ 
    Content-Type: multipart/alternative; 
                    boundary="_000_4aade2547798441eab5188a7a2436bc1contoso_" 

    --_000_4aade2547798441eab5188a7a2436bc1contoso_ 
    Content-Type: text/plain; charset="iso-8859-1" 
    Content-Transfer-Encoding: quoted-printable 

    The attachment is an email. 

    --_000_4aade2547798441eab5188a7a2436bc1contoso_ 
    Content-Type: text/html; charset="iso-8859-1" 
    Content-Transfer-Encoding: quoted-printable 

    <html> 
    <head> 
    <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-= 
    1"> 
    <style type=3D"text/css" style=3D"display:none;"><!-- P {margin-top:0;margi= 
    n-bottom:0;} --></style> 
    </head> 
    <body dir=3D"ltr"> 
    <div id=3D"divtagdefaultwrapper" style=3D"font-size:12pt;color:#000000;font= 
    -family:Calibri,Helvetica,sans-serif;" dir=3D"ltr"> 
    <p>The attachment is an email.</p> 
    </div> 
    </body> 
    </html> 

    --_000_4aade2547798441eab5188a7a2436bc1contoso_-- 

    --_004_4aade2547798441eab5188a7a2436bc1contoso_ 
    Content-Type: application/octet-stream; name="Attachment email.eml" 
    Content-Description: Attachment email.eml 
    Content-Disposition: attachment; filename="Attachment email.eml"; size=408; 
                    creation-date="Mon, 04 Sep 2017 09:59:43 GMT"; 
                    modification-date="Mon, 04 Sep 2017 09:59:43 GMT" 
    Content-Transfer-Encoding: base64 

    RnJvbToJQWRtaW5pc3RyYXRvciA8YWRtaW5AdGVuYW50LUVYSEItMTQ3MS5jb20+DQpTZW50OglN 
    b25kYXksIFNlcHRlbWJlciA0LCAyMDE3IDM6MjYgUE0NClRvOglTcml2YXJkaGFuIEhlYmJhcg0K 
    U3ViamVjdDoJQXR0YWNobWVudCBlbWFpbA0KDQpJIHdpbGwgYXR0YWNoIHRoaXMgZW1haWwgdG8g 
    YW5vdGhlciBtYWlsLg0K 

    --_004_4aade2547798441eab5188a7a2436bc1contoso_--