我正在尝试在Office 365帐户上使用EWS但是我收到了(403 Forbidden)
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013);
service.Credentials = new WebCredentials("mv003237", "correctpw","domain");
service.AutodiscoverUrl("mv003237@domain.co.uk");
要登录并查看outlook.com/EWS/Exchange.asmx上的Webservices文件,我需要通过mv003237@live.domain.co.uk进行身份验证
我已经尝试了几种这样的组合,但仍然会收到相同的错误消息。
以前是否有人有类似的连接Office 365帐户的经历?
此帐户的我的WINDOWS登录确实有一个RDG-HOME域,但我还没有看到登录OWA的域名。
非常感谢提前
答案 0 :(得分:2)
由于声誉得分低而无法发表评论,因此作为答案回应。
您是否可以使用“mv003237@domain.co.uk”登录OWA?如果是,您是否尝试过硬编码Url而不是使用自动发现来了解问题是否与自动发现或EWS有关。尝试关注而不是自动发现调用: service.Url = new Uri(@“https://outlook.office365.com/ews/exchange.asmx”);
如果上述工作正常,请使用AutodiscoverService订阅RedirectionUrlValidationCallback,并查看正在抛出的重定向URL 403。或者在服务对象上启用具有Trace *属性的详细日志记录。
答案 1 :(得分:2)
如果您已经删除了域名(正如Matt在评论中所建议的那样),剩下的一件事就是在自动发现过程中自动跟踪重定向。
将您的最后一行更改为
service.AutodiscoverUrl("mv003237@domain.co.uk", redirect => true);
按照Exchange Online发送的重定向响应进行操作。
然后完整的序列变为:
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013);
service.Credentials = new WebCredentials("mv003237", "correctpw");
service.AutodiscoverUrl("mv003237@domain.co.uk", redirect => true);