当前位置: 首页 > 知识库问答 >
问题:

EWS Api给出超时和(503)服务器不可用

翁凯定
2023-03-14

我正在使用以下代码从带有EWS API集(Microsoft.Exchange.WebServices 2.2.0)的Office 365帐户获取日历约会:

ExchangeService service = new ExchangeService();
service.Credentials = new NetworkCredential(mail, password);
service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx");
Folder DefaultCalendar = Folder.Bind(service, WellKnownFolderName.Calendar);
CalendarView calendarView = new CalendarView(fromDate, toDate);
FindItemsResults<Appointment> resultAppointments = Folder.FindAppointments(calendarView);

Microsoft.Exchange.WebServices.Data.ServiceRequestException:请求失败。基础连接已关闭:服务器关闭了一个预期保持活动状态的连接。---->System.Net.WebException:基础连接已关闭:服务器关闭了一个预期保持活动的连接。在Microsoft.Exchange.WebServices.Data.EWSHTTPWebRequest.Microsoft.Exchange.WebServices.Data.EWSHTTPWebRequest.GetResponse()在Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEWSHTTPWebResponse(IEwsHttpWebRequest请求)----内部异常堆栈跟踪结束---在Microsoft.Exchange.WebServices.Data.ServiceRequestBase.GetEWSHTTPWebResponse(IEWSHTTPWebRequestBase.ValidateAndeMitRequest(IEwsHttpWebRequest&request)t.Exchange.WebServices.Data.MultiResponseServiceRequest1.在Microsoft.Exchange.WebServices.Data.ExchangeService.FindItems[TItem](IENumerable1在Microsoft.Exchange.WebServices.Data.Folder.InternalFindItems[TItem](SearchFilter SearchFilter,SearchFilter,String queryString,ViewBase view,Grouping groupBy,ServiceErrorHanding errorHandlingMode)(Microsoft.Excha)(SearchFilter SearchFilter,ViewBase view,Grouping groupBy,ServiceErrorHandingErrorHandlingMode)nge.webservices.data.CalendarFolder.findDepartments(CalendarView视图)

或:

服务器现在无法为此请求提供服务。稍后再试。

似乎有时Office365服务无法访问或处于节流状态;我试图抓取代码,但应用程序仍然崩溃;我想是因为一条新线打开了。我该如何处理这个问题?

共有1个答案

司寇昱
2023-03-14

首先要从Github https://Github.com/officedev/ews-managed-api获取最新版本的EWS托管API。您使用的版本自2015年以来就没有更新过,而在2015年微软停止发布该库的编译版本。但是,在GitHub上,该代码已经更新并修复了许多bug

对于您使用的代码,我建议您始终设置X-AnchorMailBox,这可能导致503和超时问题(请参阅https://blogs.msdn.microsoft.com/webdav_101/2015/05/11/best-practices-ews-authentication-and-access-issues/(即使您没有使用模拟)

根据应用程序的工作量,您可能会受到限制,在这种情况下,处理异常并重试是很重要的。另外,在Office365中,邮箱会在后端移动一段时间,因此在这些移动过程中,邮箱无法访问的情况很常见

我试图抓取代码,但应用程序仍然崩溃;我想是因为一条新线打开了。我该如何处理这个问题?

不,它不跨越一个新的线程,您可以自己在GitHub上检查源代码,所以您的异常处理一定有另一个问题。

 类似资料:
  • 我正在尝试使用docker-compose和jwilder/nginx-proxy以及letsencrypt companion构建一个web应用程序,但是当我尝试时,nginx向我抛出一个503错误。 我的web应用程序是用react构建的,我制作了这个Dockerfile来构建容器映像: 这是此映像使用的nginx.config: web应用程序映像工作良好,我可以打开它,如果我只运行这个。问

  • 当我在我的服务器上用wget、curl或python爬行谷歌搜索引擎时,我遇到了一个非常奇怪的问题。Google将我重定向到以[ipv4 | ipv6]开头的地址。谷歌。fr/抱歉/索引重定向。。。最后发送503错误,服务不可用。。。 有时抓取工作正常,有时不是在白天,我尝试了几乎所有可能的方法:强制ipv4/ipv6而不是主机名、引用者、用户代理、vpn、. com/. fr/、代理和tor,.

  • 首先,我在google和statckoverflow中尝试了很多,但还是失败了。我希望能帮助我。谢谢你。 当从我的WebClient调用WCF服务时,我收到以下错误。 注意2:服务器和Web客户端托管在IIS中。

  • 问题内容: 我是Jetty的新手,我尝试在此处运行示例程序“ http://www.codeproject.com/Articles/128145/Run- Jetty-Web-Server-Within-Your- Application ”,但我收到了错误消息我的页面“ http:// localhost:8585 / runJetty / ” 我从Eclipse获取的错误日志: 我的xml文

  • > 计数操作失败,出现以下错误消息: OriginalException:ElasticSearch.Net.ElasticSearchClientException:远程服务器返回错误:(503)服务器不可用。调用:状态代码503来自:GET/myindex/_count。ServerError:Type:search_phase_execution_exception原因:“All shard

  • 问题内容: 我有一个Java Selenium项目,该项目不会在我的计算机上运行,​​但会在具有相同OS版本(OSX 10.13.1),Chrome浏览器版本(63.0.3239.84)和chromedriver版本(2.34)的同事的计算机上运行。我收到消息: 但是,当我在浏览器中打开http:// localhost:18633 / status时 ,我得到一个有效的响应: 我试过换出chro