0

我使用的是Office 365 API的V2 DLL來執行日曆操作。 我正在保存用於對其執行操作的默認日曆ID。Office 365默認日曆ID會自動更改

從過去兩年來,它對我來說工作正常,但最近1個月以來,當我試圖從我的賬戶提取日曆 - 只是爲了檢查日曆是否適用於我正在嘗試工作的人 - 獲取日曆ID是從O365 API獲取日曆ID不同

保存的日曆ID - AQMkADc5NDI0NjFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8jvkC_BGp2m1nqTgcABqRbG9B8nEivpWgOOBcJGwAAAgEGAAAABqRbG9B8nEivpWgOOBcJGwABH-QZPwAAAA==

新的響應 -

[{ 
    "IsBooking": false, 
    "IsAdditional": false, 
    "CalendarName": "Calendar", 
    "CalendarId": "AQMkADc5NDI0NjFXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX8jvkC_BGp2m1nqTgcABqRbG9B8nEivpWgOOBcJGwAAAgEGAAAABqRbG9B8nEivpWgOOBcJGwABHKkz6wAAAA==", 
    "Selected": false, 
    "IsDefault": true, 
    "HasWriteAccess": true, 
    "IsFreeBusy": true, 
    "EWS_URL": null, 
    "CalendarColour": "#5D61DF", 
    "TimeZoneId": null 
}] 

但是變化不是永久性的,一兩天後,當, Ť再次呼叫,日曆ID變回到默認日曆ID中保存在db中的相同ID。

日曆的ID是日曆的唯一標識符。但是,在許多情況下,它的價值發生了變化。有沒有什麼辦法可以通過changeKey來識別相同的日曆?任何想法我們如何使用changeKey屬性? https://msdn.microsoft.com/en-us/office/office365/api/complex-types-for-mail-contacts-calendar#CalendarResource

我發現它也很奇怪,但只有最後30-35個字符因日曆ID而改變。加密算法可能有問題。 請建議。

回答

0

我和這個團隊一起迴旋。一個文件夾的ID不應該改變。它基於商店中文件夾的PR_ENTRYID,該文件夾在郵箱中是不可變的。我不確定他們在REST中編寫了什麼額外的好東西 - 它確實出現了一些串聯。

至於更改密鑰,它不直接與id相關,所以實際上沒有辦法將更改密鑰轉換爲id。這似乎只是我們身邊的一個錯誤。但是,當然,每當文件夾發生變化時,更改鍵都會更改,並且是不透明的blob(即使在OData和EWS層對我們來說也是如此)。

感興趣的是,您也可以使用您的提取請求PR_ENTRYID擴展屬性,並且您應該看到底層ID始終相同。但是這不能解決任何問題,除了將來你對封面上發生的事情的理解。

我會在收到他們的回覆時回覆。

+0

感謝大衛的快速週轉。希望快速修復這個問題。 是否有任何地方可以獲得此類錯誤的狀態(僅用於跟蹤修復)? –