exchangewebservices之收到无效的 XML 作为 EWS 调用的响应
正在使用 EWS API 连接 Exchange 服务器。连接已建立,但我没有收到任何响应。
出现异常“从服务收到的响应不包含有效的 XML。”
内部异常是“此 XML 文档中禁止使用 DTD”。
我没明白什么是 DTD?
请您参考如下方法:
我一直在解决你的问题,直到(经过多次试验和错误):
将 TraceEnabled 设置为 true,这会将来回消息转储到控制台。
我使用了 URL https://yourexchangeserver/EWS/Exchange.asmx
例如我的工作在亚太地区使用 BPOS,所以:https://red003.mail.apac.microsoftonline.com/EWS/Exchange.asmx请求特定的服务版本,例如ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1)
第 1 步让我解决了您的第一个问题 - 它提供了 Outlook Web Access html 页面。
第 2 步让我看到它当时正在请求 2010_Sp1,但该版本不受支持。
第 3 步让“Hello world”工作/发送。
另外请注意,如果您使用该服务器,我无法让它采用除 2007 SP1 以外的任何版本,因此,没有 URL 的自动发现。
public static string sendMail_BPOS_EWS()
{
try
{
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.UseDefaultCredentials = false;
service.Credentials = new WebCredentials("some_address@server.com", "password");
service.Url = new Uri("https://red003.mail.apac.microsoftonline.com/EWS/Exchange.asmx");
Console.WriteLine(service.Url);
service.TraceEnabled = true;
EmailMessage mail = new EmailMessage(service);
mail.From = new EmailAddress("from_address@server.com");
mail.ToRecipients.Add("to_address@server.com");
mail.Subject = "Email Subject";
mail.Body = "Email Body";
mail.Send();
return "sent";
}
catch (Exception ex)
{
return ex.ToString();
}
}
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。



