EWS(Exchange Web 服务)出现未经授权的错误

Posted

技术标签:

【中文标题】EWS(Exchange Web 服务)出现未经授权的错误【英文标题】:EWS (Exchange Web Service) Getting unAuthorized Error 【发布时间】:2018-12-15 03:15:23 【问题描述】:

我在尝试发送或阅读电子邮件时收到 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();

【问题讨论】:

【参考方案1】:

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

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

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

有关更多信息,请参阅WebCredentials Constructors 和 Connecting to EWS

【讨论】:

以上是关于EWS(Exchange Web 服务)出现未经授权的错误的主要内容,如果未能解决你的问题,请参考以下文章

测试 Exchange Web 服务 (EWS) 网址

使用 TokenCredentials 的 Exchange Web 服务 (EWS) 单点登录?

导入 Exchange Web 服务 (EWS) wsdl 文件时如何修复未解析的类型?

当我的应用程序托管在 IIS 上时,Microsoft Exchange Web 服务 (EWS) 无法正常工作

Exchange Web 服务 (EWS) - 如何识别会议参与者是邮件组还是个人参与者

需要一种使用 EWS Web 服务 (SOAP) 查找 Exchange 产品版本的方法