4

В офисной надстройке 365, Office.context.mailbox.item.body.getAsync() метод не работает в Outlook Mac. Но он отлично работает в safari и chrome.Метод Office.context.mailbox.item.body.getAsync() не работает в outlook mac 2016

бюро ссылка расслоение плотной «https://appsforoffice.microsoft.com/lib/1/hosted/office.js»

здесь код надстройки чтения приложение

 var _item = Office.context.mailbox.item; 
    var body = _item.body; 
     // Get the body asynchronous as text 
     body.getAsync(Office.CoercionType.Text, function (asyncResult) { 
      if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) { 
      } 
      else { 
       $('#subject').html(asyncResult.value.trim()); 
      } 
     });   

ответ

0

Если у вас такая же проблема, но есть обходной путь. Это можно сделать с помощью метода makeEwsRequestAsync(), который указан в требованиях 1.1. Это требует, чтобы вы сделали запрос SOAP и проанализировали данные ответа, чтобы получить тело электронной почты. В запросе SOAP используйте:

'  <t:AdditionalProperties>' + 
    '   <t:FieldURI FieldURI="item:TextBody"/>' + 
    '  </t:AdditionalProperties>' + 

Это вернет ответ, который вы сможете проанализировать.

Для справки: метод https://dev.outlook.com/reference/add-ins/1.1/Office.context.mailbox.html#makeEwsRequestAsync

+0

makeEwsRequestAsync() также полезно для достижения той же требования .however он нуждается высокий уровень разрешения. 'code ReadWriteMailbox' –

+0

Да, к сожалению, разрешения должны быть обновлены в манифесте ... –