【发布时间】:2018-07-23 03:36:24
【问题描述】:
这让我发疯了。我一直在使用以下 c# 代码从本地 Exchange 邮箱中提取消息,使用 Exchange Web 服务:
es = new ExchangeService(ExchangeVersion.Exchange2013_SP1)
{
Credentials = new WebCredentials(ConfigurationManager.AppSettings["User"].ToString(),
ConfigurationManager.AppSettings["Password"].ToString(),
ConfigurationManager.AppSettings["Domain"].ToString())
};
//es.TraceEnabled = true;
es.AutodiscoverUrl(ConfigurationManager.AppSettings["MailBox"].ToString(), (a) => { return true; });
以前的四个帐户都可以正常使用。对于我要求创建的最新帐户,我收到了可怕的错误:
找不到自动发现服务。
我们的 Exchange 人员已上下发誓,新帐户与其他帐户没有区别。但一定有什么不同的,对吧?有谁知道它可能是什么?
我激活了上面的跟踪行以在控制台窗口中获取输出(代码在控制台应用程序中)。虽然我可以发布失败帐户的整个跟踪,但这里是工作帐户和非工作帐户的响应标头。 (服务器名称已更改。)
良好的帐户
<Trace Tag="AutodiscoverResponseHttpHeaders" Tid="1" Time="2018-01-29 21:24:45Z">
HTTP/1.1 200 OK
request-id: d291efce-7958-4faa-abbb-35c020f2780e
X-CalculatedBETarget: abc123.xrdom.xrcompany.firm
X-DiagInfo: abc123
X-BEServer: abc123
Persistent-Auth: true
X-FEServer: server02
Vary: Accept-Encoding
Transfer-Encoding: chunked
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Date: Mon, 29 Jan 2018 21:24:44 GMT
Set-Cookie: X-BackEndCookie=S-1-5-21-3649160047-1147056544-736230609-28825=u56Lnp2ejJqBm52cnsbJzJrSns3LxtLLns3G0saax5vSzM/LxpvHm8fJypqZgYHNz87H0s/N0s3Hq83Oxc3LxcvK; expires=Wed, 28-Feb-2018 21:24:45 GMT; path=/autodiscover; secure; HttpOnly
Server: Microsoft-IIS/8.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
</Trace>
坏帐:
<Trace Tag="AutodiscoverResponseHttpHeaders" Tid="1" Time="2018-01-29 21:21:49Z">
HTTP/1.1 401 Unauthorized
request-id: 99dfa551-c4c2-441b-a317-4f4fcba21a62
Server: Microsoft-IIS/8.5
WWW-Authenticate: Negotiate,NTLM,Basic realm="mail.xrcompany.com"
X-Powered-By: ASP.NET
X-FEServer: server01
Date: Mon, 29 Jan 2018 21:21:48 GMT
Content-Length: 0
</Trace>
除了 OK 与 Unauthorized 代码之外,让我印象深刻的是 X-REServer 的不同值。
任何帮助将不胜感激。
【问题讨论】:
-
您是否对“The Autodiscover service couldn't be located”进行了一些研究?
-
是的,这些解决方案都没有帮助。大多数人说问题与密码有关,但这不是问题所在。其他我不记得的解决方案也不适用。
标签: c# exchange-server exchangewebservices