提问人:Eddy 提问时间:11/6/2023 最后编辑:Brian Tompsett - 汤莱恩Eddy 更新时间:11/7/2023 访问量:56
从服务收到的响应不包含有效的 XML
The response received from the service didn't contain valid XML
问:
我们正在尝试设置一个方案,即在 Windows Server 2019 IIS 上运行的应用程序使用指定的以下电子邮件地址、用户名和密码登录,并自动将邮件从 Office 365 发送回客户端。
简单来说,应用程序必须打开 Web URL,使用给定的凭据登录并发送邮件。
我已经浏览了很多表单,并尝试快速更改 URL 几次,因为有些表单不包含在这里实际使用的内容。
因此,需要发生的事情是,应用程序需要按照前面的表格在URL(https://outlook.office365.com/EWS/Exchange.asmx)上联系Office 365,但随后我们收到以下错误:
“您遇到的错误消息,”(401) 未经授权”
我们已经允许 365 上的 noreply/order 电子邮件地址并仔细检查用户名和密码,但错误消息仍然存在,我们还确保 2 管理中心上的 365 因素身份验证已关闭,以便发送此邮箱并且委派正确。.我们也使用了 https://autodiscover.outlook.com/EWS/Exchange.asmx 因为在 365 的管理门户中,似乎一切都设置为自动发现,但没有成功。
然后,我们根据其他表单将URL更改为“https://outlook.office.com/mail/ourdomain.co.za/EWS/Exchange.asmx”,您会获得Office 365登录页面,该页面似乎是正确的URL,但现在我们收到此错误:
“从服务收到的响应不包含有效的 XML”
我们没有运行混合解决方案,只想使用应用程序通过 Office 365 发送,我们没有现场交换服务器。防火墙规则也进行了检查,似乎找不到任何阻止此请求的内容。
此外,我不确定是否需要在我们的 Windows Server IIS 端做任何事情,我唯一尝试的就是在 IIS 请求过滤中的站点下添加并允许 URL,这也没有任何区别。
请参阅当前的应用程序代码。****中的区域,我们填写了实际的详细信息。
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
//Set your Exchange server URL and credentials.
try
{
// Set the correct URL for Office 365.
service.Url = new Uri("https://outlook.office.com/mail/ourdomain.co.za/EWS/Exchange.asmx");
}
catch (Exception ex)
{
return BadRequest("WebService Uri: " + ex.Message);
}
try
{
service.Credentials = new WebCredentials("****[email protected]****", "****userpassword****");
}
catch (Exception ex)
{
return BadRequest("Credentials: " + ex.Message);
}
try
{
EmailMessage email = new EmailMessage(service);
email.Subject = "Your Visits for today";
email.Body = new MessageBody("The email is working");
email.ToRecipients.Add("****[email protected]****");
email.Send();
return Ok("Email sent");
}
catch (Exception ex)
{
return BadRequest("Message Error: " + ex.Message);
}
}
请任何帮助或协助将有很大帮助,因为我们目前处于这一点,我们不知道要进一步检查什么。
答: 暂无答案
评论
service.TraceEnabled = true; service.TraceFlags = TraceFlags.All;