我通过Gmail的API发送内联附件时遇到了一个奇怪的问题。我使用的是.NET客户端(版本1.10.0)。该电子邮件是对我通过内联附件收到的邮件的回复,因此附件是回复中引用的部分。
这是我发送的原始MIME邮件:
From: ...
To: ...
Date: Fri, 01 Jul 2016 11:48:29 -0700
Subject: Re: attachment test #2
Message-Id: ...
In-Reply-To:...
References: ...
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-JOa+9Bw0690XCFj1YCPc1Q=="
--=-JOa+9Bw0690XCFj1YCPc1Q==
Content-Type: text/html; charset=utf-8
Content-Id: <W4PKNTOPLYT4.32IVHE45EWK21@BILLRAVDIN9F02>
<div style="font-family: Helvetica, Arial, sans-serif;">back atcha.<div><br>On Fri, Jul 01, 2016 at 11:38 AM, ... wrote:<div>[Omitted for clarity]<img height="168" width="300" src="cid:8AF6D64A-9AAD-4E54-8998-5F08C42F537F"></span></div><br></div></div></div></div></div>
--=-JOa+9Bw0690XCFj1YCPc1Q==
Content-Type: image/jpeg; name="ha ha.jpeg"
Content-Disposition: inline; filename="ha ha.jpeg"
Content-Transfer-Encoding: base64
Content-Id: <8AF6D64A-9AAD-4E54-8998-5F08C42F537F>
[Base64 encoded attachment]
--=-JOa+9Bw0690XCFj1YCPc1Q==--
请注意上面内联附件的mime部分的内容处理:
内容处理:内嵌; filename =&#34; ha ha.jpeg&#34;
这是内联附件部分的MIME标题在它出现时的样子:
Content-Type: image/jpeg; name="ha ha.jpeg"
Content-Disposition: attachment; filename="ha ha.jpeg"
Content-Transfer-Encoding: base64
Content-ID: <8AF6D64A-9AAD-4E54-8998-5F08C42F537F>
X-Attachment-Id: 594301951148d672_0.1
我的问题是:为什么内容处置现在被重写为附件而不是内联?
我发现在浏览器中查看电子邮件时,它会按预期显示。但在使用我的Mac的邮件客户端查看时,内联附件会在电子邮件中显示两次。我怀疑内容处置的变化可能是原因 - 任何你可以放弃的亮点都会非常感激!