【问题标题】:Mail RFC embedded image using cid for text/plain使用 cid 作为文本/纯文本的邮件 RFC 嵌入图像
【发布时间】:2018-07-16 09:16:09
【问题描述】:

虽然我记得电子邮件可能包含 HTML 和纯文本中的嵌入图像,但我今天注意到 Outlook 2013 和 Windows 10 邮件应用程序不显示它。

这是 RFC 标准删除了“[cid:]”定义的东西吗?

以下是格式化的邮件: (另存为 *.eml 以显示其内容)

MIME-Version: 1.0
Date: Tue, 6 Feb 2018 10:12:53 +0100
From: Test User 2 <test.user2@lab.local>
Subject: TEst in plain text
Thread-Topic: TEst in plain text
To: Test User 1 <test.user1@lab.local>
Content-Type: multipart/mixed;
    boundary="_60A9E784-DBBE-4378-9A84-01D36C2226AF_"

--_60A9E784-DBBE-4378-9A84-01D36C2226AF_
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

test

[cid:BBCLOGO@23AD2D600E]


--_60A9E784-DBBE-4378-9A84-01D36C2226AF_
Content-Type: image/jpg; name="23AD2D600EF4C69FF4D5479A8BB7FE73.jpg"
Content-ID: <BBCLOGO@23AD2D600E>
Content-Transfer-Encoding: base64
Content-Disposition: inline;
    filename="23AD2D600EF4C69FF4D5479A8BB7FE73.jpg"

/9j/4AAQSkZJRgABAgAAZABkAAD/2wBDAAIBAQEBAQIBAQIDAgECAwMCAgICAwMDAwMDAwMFAwQE
BAQDBQUFBgYGBQUHBwgIBwcKCgoKCgwMDAwMDAwMDAz/2wBDAQICAgQDBAcFBQcKCAcICgwMDAwM
DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCAAyADIDAREA
AhEBAxEB/8QAHAAAAgIDAQEAAAAAAAAAAAAAAAcFCAIEBgMJ/8QAOBAAAQIFAQYBBw0BAAAAAAAA
AQIDAAQFBhETBwgSITFRQTQ1QmFicYEUFiIyMzZDY3KEkZSh8P/EABoBAAIDAQEAAAAAAAAAAAAA
AAAFAgMEBgH/xAAnEQACAgECBQMFAAAAAAAAAAAAAQIRAwQxBRIhUYEyQcEiYZHw8f/aAAwDAQAC
EQMRAD8A+mmqvvHWUJw1V94KAk7YtG67zmzJWzJuTTqcaikBKUIz041rwlOccsmKsmWONXJ0SjBy
2Oxn93W76Lbc3cVbmWwZZovCUkm1zLyiPROAgD1kE4HOMsdfCUkkvguenaVsXeqvvG+jOGqvvBQB
qr7wUBjABtUOmKrVak6MhXAubfalgrGcF1wIzj4xGcuVN9j2Kt0Wyt23KPalIaodCZSxT2RhKU9V
HxUo+Kj4kxzGTI5u2NYxUVSN6IEhBbzVl0e3Lgkq7R2ksCqJeMwy2MI1WSjKwByBUFjOPEZ6kw74
dmc4tP2MGpgk7XuLKGJmCAAgAmNnzM1MX1R0SbZdmBOSywhHMkIeSs/wBmKs7ShK+xPH6kWyjmBq
EACd3tZeZXLUKbSgmTbVNtrc9ELcDSkpPrIQT8Ia8La+rwY9WthLw3MYQAEAEhalbNtXNT7g4StM
nMNTCm0nBWlCwpSQT0yMiIZYc8Wu6JQlTTLbsPszTCJmXUFsOJC0LT0UlQyCPeI5dqhsZx4Ak962
4kO1GmWq0DxMoXPPHIxl06SBjuAhR+MOOGY+jl4MWql1SFDDQyBAAQAEAFm9hE9P1HZVSX6ivjcS
h1htRAB0mX1stg47JSB7hHO62KWV0MsDuCOvjKXFV9rdQqFR2lVp6pK4nkTb0ujljDTKy00AB7CR
7+sdLpYpY412FeV3JnOxeVhABk006+4llhJW8shKUJBJJPIAAQN0B3dm7u9+3OUTFUbFJpZwS5OA
6xHssjCs/qKYxZdfCG3Vl8NPKX2LDUyny9Jp0vS5QYlJZtEu0D4IbSEJ/wAEIZS5nYwSpUe8eHor
9tmw2rXxWPnVbLzQqGkhp6UeyjULecKS5zGSCBggDl1hlo9Ysa5ZbGXNgcnaErcNqXHak38iuOSd
lH8kJ1kkJXjqULH0VD1pJhvjyxmri7McoOO5HxMiOfdf+zd82dXOnnXw6/lwp4j5+P6bNN4+Rxwp
NgQAEABABD3591pryD6o8++RdfxItwepb+NyGTb28lZP6Hl//ft46L87fvkWH//Z

--_60A9E784-DBBE-4378-9A84-01D36C2226AF_--

【问题讨论】:

    标签: image email mime-message


    【解决方案1】:

    您指的是RFC 2387,“MIME 多部分/相关内容类型”

    要通过其Content-ID (CID) MIME 标头字段的值来引用附件,它很简单:

    <img src="cid:BBCLOGO@23AD2D600E">
    

    请注意,您的正文必须是 HTML,例如 Content-Type: text/html; chaset="us-ascii",如 RFC 2045 §5 所示。

    当您在邮件正文中放置图像时,Outlook 应该会自动执行此操作。如果您需要更多帮助来配置它,可能有一个比(以编程为中心的)Stack Overflow 更合适的问答网站。

    【讨论】:

    • 我知道它目前仅适用于 text/html。我实际上想要一个官方声明,因为我记得过去它也适用于使用“[cid:xxxxxxxx]”的文本/纯文本
    • 我确实记得在旧电子邮件中看到过这一点,但我认为它从未渲染图像(除非图像出现在正文下方,就像它会做的那样,不管那个〜标签)。我认为这只是一个提示,即存在这样的附件(当 CID 包含文件名时,这更相关,尽管在您的示例中没有)。也许有人可以翻阅旧的 RFC,看看是否有一些参考,但电子邮件从来都不擅长严格遵循规范。
    猜你喜欢
    • 2012-04-28
    • 1970-01-01
    • 2011-04-11
    • 1970-01-01
    • 2011-06-19
    • 2015-06-29
    • 1970-01-01
    • 2012-06-14
    • 1970-01-01
    相关资源
    最近更新 更多