4

In Office 365 Outlook-Add-in, Office.context.mailbox.item.body.getAsync() Methode funktioniert nicht in Outlook Mac. Aber es funktioniert gut in Safari und Chrom. ReferenzOffice.context.mailbox.item.body.getAsync() -Methode funktioniert nicht in Outlook mac 2016

js Büro ist "https://appsforoffice.microsoft.com/lib/1/hosted/office.js"

hier ist der Code von Add-In lesen App

 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()); 
      } 
     });   

Antwort

0

Hatte das gleiche Problem, aber es gibt einen Workaround. Sie können dies mit der makeEwsRequestAsync() -Methode erreichen, die im Anforderungssatz 1.1 bereitgestellt wird. Dazu müssen Sie eine SOAP-Anfrage erstellen und die Antwortdaten analysieren, um den E-Mail-Text zu erhalten. Verwenden Sie in der SOAP-Anfrage:

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

Dies wird eine Antwort zurückgeben, die Sie analysieren können.

Zum Vergleich: https://dev.outlook.com/reference/add-ins/1.1/Office.context.mailbox.html#makeEwsRequestAsync

+0

makeEwsRequestAsync() -Methode auch hilfreich gleiche Anforderung zu erreichen .however es höchste Berechtigungsstufe benötigt. 'code ReadWriteMailbox' –

+0

Ja leider müssen die Berechtigungen im Manifest aktualisiert werden ... –