And*_*ato 5 java email jakarta-mail email-attachments
我使用javamail发送带有长文件名附件的邮件.javamail相应地响应更新的RFC,并将文件名跨越邮件头的两行,如下例所示:
------=_Part_0_978693914.1433356404377
Content-Disposition: ATTACHMENT;
filename*0="=?UTF-8?Q?arquivo_com_nome_grande_e_acentua=C3=A7=C3=A3o.png\"; f";
filename*1="ilename*1=\"?="
Content-Type: APPLICATION/OCTET-STREAM;
name*0="=?UTF-8?Q?arquivo_com_nome_grande_e_acentua=C3=A7=C3=A3o.png\"; n";
name*1="ame*1=\"?="
Content-Transfer-Encoding: BASE64
Run Code Online (Sandbox Code Playgroud)
像Outlook这样的邮件客户端不理解它,所以我需要让javamail弃用;将文件名分成两行.
阅读RFC后,我发现了一个不分割的属性:"mail.strictly_mime.parm_folding"
我如何在javamail中设置它?
mail.strictly_mime.parm_folding属性适用于Thunderbird,它不在RFC中.
根据Thunderbird的这篇文章,Outlook不支持RFC 2231,JavaMail用它来编码filename参数.您可以通过将JavaMail System属性"mail.mime.encodeparameters"设置为"false" 来禁用RFC 2231编码.您可能希望将System属性"mail.mime.encodefilename"设置为"true"以使用Outlook支持的非标准文件名编码.
| 归档时间: |
|
| 查看次数: |
1567 次 |
| 最近记录: |