首页 > 解决方案 > EWS(Exchange Web 服务)出现未经授权的错误

问题描述

我在尝试发送或阅读电子邮件时收到 UnAuthorized(401) 错误

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
            service.TraceEnabled = true;
            service.TraceFlags = TraceFlags.All;

            service.Credentials = new WebCredentials("XXXX@YYY.COM", "XXXXXXXX");
            service.AutodiscoverUrl("XXXXXX@YYYYY.com", RedirectionUrlValidationCallback);

 EmailMessage email = new EmailMessage(service);
            email.ToRecipients.Add("abc@yahoo.com");
            email.Subject = "Testing from C#";
            email.Body = new MessageBody("This is the first email I've sent by using the EWS Managed API");
            email.Send();

标签: exchangewebservices

解决方案


问题很可能是您为WebCredentials 凭据传递的内容取决于您的 Exchange/Active Directory 的配置方式。

尝试传入格式用户名、密码和域:

service.Credentials = new WebCredentials("username", "password", "domain");

有关更多信息,请参阅WebCredentials 构造函数连接到 EWS


推荐阅读