【发布时间】:2016-07-09 11:20:11
【问题描述】:
我正在使用 Microsoft EWS(Exchange 网络服务)向外部客户发送电子邮件(关于支持电话)。
我们的一个客户正在尝试将电子邮件正文自动导入他们自己的支持呼叫系统(我认为这是基于 JAVA),他们不断收到此异常:
不支持的编码异常:iso-8859-10
所以他们要求我将其更改为 UTF8
如果我从我的 Outlook(它是同一 Exchange 的客户端)向他们发送电子邮件,它工作正常。只有通过 EWS 发送时才会发生。
这是我的代码:
protected void SendEmail2(string recipientsAddresses, string senderAddress, string ccRecipients, string subject, string body, bool CCToSender, bool simulate, Importance messageImportance)
{
ExchangeService service = null;
EmailMessage message = null;
try
{
// initialize a proxy to the exchange web services
service = new ExchangeService(MAGMA_EXCHAGE_VERSION);
service.Url = new Uri(MAGMA_EWS_URI);
// create the message
message = new EmailMessage(service);
// Add recipients
foreach (string recipientEmail in recipientsAddresses.Split(";".ToCharArray()))
{
message.ToRecipients.Add(new EmailAddress(recipientEmail));
}
// handle inline images
body = AddInlineImages(message, body);
// set everything
message.From = new EmailAddress(senderAddress);
message.Subject = subject;
message.Body = new MessageBody(BodyType.HTML, body);
message.Importance = messageImportance;
// and send
message.Save();
FolderId SentFolderForUser = new FolderId(WellKnownFolderName.SentItems, senderAddress);
message.SendAndSaveCopy(SentFolderForUser);
}
catch (Exception)
{
throw;
}
}
我传递给“body”的字符串是一个 HTML,其中包含:
meta charset="utf-8" 标记在标题下。
这里有什么我遗漏的吗?
谢谢,吉尔。
【问题讨论】:
标签: email encoding utf-8 exchangewebservices iso-8859-1