我正在开发Outlook Web App(Office 365开发人员)。关于这一点,有没有办法读取位于收件箱中的所选邮件的标题?我正在使用Exchange Server2013。我想使用Jquery或Javascript编写代码。
我试图从Microsoft添加“消息头分析器”(链接:-'https : //store.office.com/message-header-analyzer-WA104005406.aspx?assetid=WA104005406 ')。现在它可以正常工作,并且可以读取标头。但是我需要使用自己的代码实现相同的功能。
如果有人可以提供良好的参考作为开始,我将不胜感激。(因为,我在搜索Google上付出了很大的努力。但是..仍然没有运气)
提前致谢。
首先,我要感谢所有对我做出反应以制定解决方案的人。特别感谢@FreeAsInBeer和MrPiao。花了几天的时间后,我得以开发出以下解决方案来获取邮件头。我从代码中删除了所有不必要的业务逻辑,最后想到了以下代码。它可以用于使用JQuery读取收件箱电子邮件的标题。
我在外面发出EWS请求以获取标头。从其回调方法中,我可以检索预期的结果。之后,最好使用jQuery.parseXML读取和处理响应(代码中未包含)
希望这种解释对您有所帮助。
var _mailbox;
var _ItemId1
(function () {
"use strict";
// The Office initialize function must be run each time a new page is loaded
Office.initialize = function (reason) {
$(document).ready(function () {
app.initialize();
_mailbox = Office.context.mailbox;
_ItemId1 = _mailbox.item.itemId;
});
};
})();
function getSelectedEmailHeaders() {
// Wrap an Exchange Web Services request in a SOAP envelope.
var var1 = '<?xml version="1.0" encoding="utf-8"?>';
var var2 = '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">';
var var3 = ' <soap:Header>';
var var4 = ' <t:RequestServerVersion Version="Exchange2010" />';
var var5 = ' </soap:Header>';
var var6 = ' <soap:Body>';
var var7 = ' <m:GetItem>';
var var8 = ' <m:ItemShape>';
var var9 = ' <t:BaseShape>IdOnly</t:BaseShape>';
var var10 = ' <t:AdditionalProperties>';
var var11 = ' <t:FieldURI FieldURI="item:Subject" />';
var var12 = ' <t:FieldURI FieldURI="item:MimeContent" />';
var var13 = ' </t:AdditionalProperties>';
var var14 = ' </m:ItemShape>';
var var15 = ' <m:ItemIds>';
var var16 = ' <t:ItemId Id="' + _ItemId1 + '" />';
var var17 = ' </m:ItemIds>';
var var18 = ' </m:GetItem>';
var var19 = ' </soap:Body>';
var var20 = '</soap:Envelope>';
var envelopeForHeaders = var1 + var2 + var3 + var4 + var5 + var6 + var7 + var8 + var9 + var10 + var11 + var12 + var13 + var14 + var15 + var16 + var17 + var18 + var19 + var20;
//Calling EWS
_mailbox.makeEwsRequestAsync(envelopeForHeaders, callbackForHeaders);
}
//This Function called when the EWS request is complete.
function callbackForHeaders(asyncResult) {
//Write the content of the asyncResult on console
console.log(asyncResult);
}
谢谢你。库山兰迪玛
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句