使用 EWS API 发送电子邮件方法获取 401 未经授权
Posted
技术标签:
【中文标题】使用 EWS API 发送电子邮件方法获取 401 未经授权【英文标题】:Using EWS API send email method get 401 unauthorized 【发布时间】:2018-10-30 14:32:20 【问题描述】:我对 EWS API 非常陌生。现在我在使用 EWS 示例发送电子邮件时遇到问题。仍然收到错误:
401 未经授权。
这是我的示例代码:
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Credentials = new WebCredentials("user1@contoso.com", "password");
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.AutodiscoverUrl("user1@contoso.com", RedirectionUrlValidationCallback);
EmailMessage email = new EmailMessage(service);
email.ToRecipients.Add("user1@contoso.com");
email.Subject = "HelloWorld";
email.Body = new MessageBody("This is the first email I've sent by using the EWS Managed API");
email.Send();
email.Send() 函数中的错误。对此有什么帮助吗? 相关链接:https://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/get-started-with-ews-managed-api-client-applications
我搜索了所有链接,但没有正确答案。
【问题讨论】:
401 非常直接,要么是您的凭据错误,要么是您的 Exchange Server 上未正确配置 EWS。 嗨,我也遇到了这个问题,我找不到与这个问题相关的任何信息。凭据有效,但我仍然收到这个烦人的错误 【参考方案1】:我检查了您的提供链接,没有发现任何问题。一般来说,这样写是没有问题的。问题应该与您的服务器环境或wanndream提到的帐户有关。
您可以参考以下链接:
"(401) Unauthorized" error when you use an EWS application to impersonate a user in Office365 Dedicated/ITAR
Exchange Web Service API and 401 unauthorized exception
另外,您能否更改您的帐户进行测试?
【讨论】:
【参考方案2】:在黑暗中拍摄,但很容易尝试:几年前,我遇到了无法解释的 401,发现一些网络帖子提到向服务对象添加一个空的 cookie 容器,即:
service.CookieContainer = new CookieContainer();
当时它似乎起到了作用,但不确定它是否仍然是一件事。
【讨论】:
以上是关于使用 EWS API 发送电子邮件方法获取 401 未经授权的主要内容,如果未能解决你的问题,请参考以下文章