簡體   English   中英

Office 365 EWS日歷訪問提供了ErrorTooManyObjectsOpened

[英]Office 365 EWS calendar access giving ErrorTooManyObjectsOpened

我們使用針對Office 365的Exchange Web服務(EWS)API在用戶的日歷中創建日歷事件。 這對於本地部署來說效果很好,但是對於Office 365部署,我們似乎很快就達到了限制。

創建16個事件之后,在16個不同用戶的日歷中(通過服務帳戶,使用對日歷的委托訪問),我們收到以下錯誤:

ErrorTooManyObjectsOpened-打開的並發連接太多

大約5分鍾后,此錯誤將清除,我們可以繼續創建事件。 看來EWS服務器緩存了到郵箱的連接,而Office 365似乎只允許一次連接到16個郵箱。

我們為克服此錯誤做了很多嘗試,但沒有找到“最終”解決方案或解決方法。 我們嘗試了什么:

  • 使用模擬代替委派:這可行,但是從安全角度來看是不可行的。
  • 使用多個服務帳戶:雖然每個帳戶仍每5分鍾限制為16個用戶,但這可以起作用。
  • 我們嘗試使用X-AnchorMailboxX-PreferServerAffinity標頭,並在不使用HTTP和不使用HTTP cookie的情況下發出請求保持活動,這沒有任何區別。 從調試信息中我們可以看到,如果我們保留cookie /連接,我們通常會在同一前端服務器和后端服務器上運行,而如果我們丟棄cookie卻發送一個X-AnchorMailbox則會最終到達不同的前端服務器上。 X-AnchorMailbox標頭。
  • 我們尚未嘗試過REST API,因為客戶端憑據流尚不可用

只有CreateItems調用似乎會導致此問題,我們可以為許多用戶執行FindItems而不會達到限制。

是否有人知道克服此限制的方法,例如,我們可以做一些呼叫來關閉Office 365端的緩存郵箱會話嗎? 或者會議室中是否有Office 365管理員可以闡明確切的限制條件,為什么它們比內部Exchange限制條件低很多?

其他詳細信息:我們正在使用EWS Java API的修改版,但已進行了廣泛的研究,並且非常確定此問題是在服務器端。

不幸的是,您無法撥打電話來關閉連接。 建議假冒他人。 您說從安全角度來看這是“不可以”,您能詳細說明一下嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM