我使用OSB(11.1.1.6)服务发送电子邮件。
某些电子邮件客户端不会提取附件。
我们已将问题缩小到MIME内容类型。
通过OSB,它将Content-Type设置为multipart/related
。为了使其工作(我们使用ncat测试),我们需要将Content-Type设置为multipart/mixed
。
但我无法找到任何方法强制OSB将其设置为multipart/mixed
。
此消息 显示某些客户端上的附件:
From: <nothing@example.com>
To: nothing@example.com
Message-ID: <xxx>
Subject: Subject 123
MIME-Version: 1.0
Content-Type: multipart/related; boundary="MIME_Boundary";
start=1389578236803081255-2926c9b7.148d69bfba8.7396
Return-Path: nothing@example.com
--MIME_Boundary
Content-ID: 1389578236803081255-2926c9b7.148d69bfba8.7396
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
<h1>Head</h1>
<p>Paragraph <b>bold</b></p>
--MIME_Boundary
Content-Type: text/plain; name="TEST.txt"
Content-Transfer-Encoding: base64
Content-Description: TEST.txt
Content-Disposition: attachment; filename="TEST.txt"
VGVzdGluZyAxMjM=
--MIME_Boundary--
此消息显示附件:
From: <nothing@example.com>
To: nothing@example.com
Message-ID: <xxx>
Subject: Subject 123
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="MIME_Boundary";
start=1389578236803081255-2926c9b7.148d69bfba8.7396
Return-Path: nothing@example.com
--MIME_Boundary
Content-ID: 1389578236803081255-2926c9b7.148d69bfba8.7396
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
<h1>Head</h1>
<p>Paragraph <b>bold</b></p>
--MIME_Boundary
Content-Type: text/plain; name="TEST.txt"
Content-Transfer-Encoding: base64
Content-Description: TEST.txt
Content-Disposition: attachment; filename="TEST.txt"
VGVzdGluZyAxMjM=
--MIME_Boundary--
正如您所看到的,唯一的区别是Content-Type。
那么如何强制OSB将Content-Type设置为multipart/mixed
?
答案 0 :(得分:0)
您可以设置传输标头内容类型。我假设您正在使用路由来调用具有电子邮件配置的BS服务。从您要路由的代理服务器,在请求操作中,添加通信&gt;运输标题。从下拉列表中选择电子邮件&gt;&gt;内容类型。
答案 1 :(得分:0)
在与Oracle支持部门进行一些沟通后,我们指出应用补丁12585136。
这是针对OSB 11.1.1.7(link)
修复的错误之一在我们申请并测试了补丁之后,我会更多回复更新此答案。