2017-05-31 40 views
1

我正在編寫一個需要MIME格式的電子郵件內容的插件。現在我使用ewsurl(),getCallBackTokenAsync()Office.context.mailbox.itemId api來查找EWS URL,訪問令牌,消息ID並通過Ajax將其發送到我的後端。我的後端向EWS發送SOAP請求並下載電子郵件。這種方法是否正確?在Outlook Web插件中訪問電子郵件內容

我主要關心的是如果EWS端點看到來自同一臺機器的太多請求,是否會有任何限制。例如,組織中的幾個用戶(比如說幾百個用戶)可以同時使用該加載項。在這種情況下,附加後端可以向EWS發送多個併發請求。如果EWS看到來自同一個加載/同一個後端機器的太多請求,EWS是否會實施一些限制?

是否有其他方法?

回答

0

這是目前唯一的方法。 Office.js和Graph都不支持獲取原始電子郵件消息。鑑於插件是在單個電子郵件的上下文中運行的,我無法想象這最多會導致每秒多次調用,所以我不會太在意節流。

+0

謝謝馬克。爲了進一步闡明我的問題,如果組織中的幾個用戶(比如幾百個)同時使用加載項。在這種情況下,加載項後端可以向EWS發送多個併發請求。如果EWS看到來自相同加載項/相同後端機器的太多請求,EWS是否會實施一些限制。 – bala

0

我正在寫一個插件,需要MIME格式的電子郵件內容。

能夠得到原始MIME消息。 Exchange不存儲MIME內容。您可能會生成通過Exchange即時完成的生成的MIME內容,並且此轉換很昂貴。 Resieved MIME消息與Exchange收到的原始MIME沒有任何關係,那爲什麼要麻煩呢? EWS請求所能達到的最大值是原始郵件標題(PR_TRANSPORT_MESSAGE_HEADERS),但不是完整的原始MIME郵件。

限制:如果您要使用來自客戶端的EWS請求(makeEwsRequestAsync),您將被限制爲3個異步調用和1 Mb的響應。如果你從你的服務器上這樣做,你將能夠通過這些限制。更多關於此:Limits for activation and JavaScript API for Outlook add-ins

+0

感謝Slava的鏈接。這很有用。通過「MIME格式的電子郵件內容」,我的意思是我們獲得的響應GetItem EWS調用的部分的值。 – bala

+0

@BalakrishnanRajkumar我修改了我的答案,以澄清我的觀點。我所說的是通過互聯網旅行的「原始MIME」。由於Exchange不保留此原始MIME,因此無法檢索。取而代之的是,您將收到由Exchange MIME內容生成的內容,這與原始MIME無關。它會/可能使用不同的編碼,邊界等。這被認爲是昂貴的Exchange操作。 –

相關問題