1
我們使用Office JavaScript API開發Outlook加載項並需要更新郵件消息的類別。當從Outlook JavaScript Api(office.js)中調用Exchange EWS時UpdateItem中的訪問被拒絕
當試圖調用的updateItem與Exchange EWS,使用外接令牌 - 它無法與500
查看請求和響應:http://pastebin.com/55x2d2Ht
- 的應用程序的清單權限是ReadWriteMailbox(最高)
- 當在OWA/manageapps中選擇應用程序時 - 它顯示「單擊此添加時,它將能夠:在您的郵箱中讀取,創建和更新電子郵件」
- 嘗試從mailbox.getCal lbackTokenAsync和使用makeEwsRequestAsync。
- EWS GetItem和CreateItem操作成功 - 它只是UpdateItem失敗
- 對UpdateItem的響應:500請求的Web方法對此調用方或應用程序不可用。
- 的事實,這是500(而不是403)可以暗示的updateItem操作被阻止的插件應用程序共
- JWT的令牌(從getCallbackTokenAsync)不具有「SCP」鍵
- 如果相同UpdateItem XML Soap數據包與另一個令牌一起發送,來自在Azure中註冊的測試OAuth應用程序,具有讀/寫Exchange權限 - >成功。這個應用程序與「scp」的jwt令牌:「full_access_as_user Mail.Read Mail.ReadWrite Mail.Send」
- 與另一個交換用戶使用外接令牌嘗試 - 也失敗。
- Office AddIn文檔指出EWS UpdateItem操作在插件的上下文中受支持。請參閱Office Dev Center
- 摘要:只有具有Addin OAuth令牌的Ews UpdateItem失敗。其他操作成功並使用其他令牌(或基本身份驗證)發佈UpdateItem也會成功。
這完美的作品。但是當我在收件箱中時,它會立即應用自定義類別,我可以立即在視圖中看到它,但是當我位於sentitems文件夾中時,它不會顯示,我必須再次清除offlineitec文件夾和抓取項目以查看更改 – Hitendra
當我這樣做時,類別會出現,直到我點擊其他東西。當我回到郵件項目時,消息「這是最新版本,bu你是否對另一個副本進行了更改。點擊這裏查看其他版本「出現,點擊它,我可以看到帶有添加的類別的版本。 – ryan