AutoDiscoverURL有什么用?

时间:2015-04-03 12:11:30

标签: c# asp.net c#-3.0

在分析程序时,我看到了一个名为AutoDiscoverURL的函数!我搜索了它,遗憾的是无法解决这个问题。

2 个答案:

答案 0 :(得分:1)

Autodiscover属性将仅使用传入的emal地址计算出服务URL。如果AutoDiscover重定向,则自动发现将失败。

如果您不知道,可以使用它来查找端点。

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010); 
service.Url //Null
service.AutodiscoverUrl("Dean.Meehan@company.ie", (discoverURL) => true);
service.Url //https://exchange.example.com/ews/exchange.asmx

注意:我使用lamba (discoverURL) => true始终接受该网址,如果您收到不受信任的电子邮件,则可能需要验证在运行发现之前返回的网址。

答案 1 :(得分:0)

MSDN立即给出答案:

  

将Url属性初始化为Exchange Web服务(EWS)   通过调用自动发现来指定电子邮件地址的端点   服务。

     

<强>说明:

     

如果自动发现服务器返回重定向HTTP状态代码,则为此   方法将使用Message生成AutodiscoverLocalException   属性设置为&#34;自动发现阻止潜在的字符串   不安全的重定向   https://autodiscover.contoso.com/autodiscover/autodiscover.xml。至   允许自动发现遵循重定向,使用   AutodiscoverUrl(string,AutodiscoverRedirectionUrlValidationCallback)   过载&#34。为所有重定向响应生成此异常,   无论重定向中返回的URL的有效性如何   响应。