【问题标题】:Get message body using JavaScript API for Office使用 JavaScript API for Office 获取消息正文
【发布时间】:2015-09-27 17:31:20
【问题描述】:

我正在开发一个简单的邮件应用程序,我需要获取邮件正文。 MSDN 说,JavaScript API for Office 的版本 1.1 具有 body 对象的 body 属性,可以这样获取:

Office.context.mailbox.item.body;

但问题是我需要访问read mode 中的body,而MSDN 声明:

读取模式: body 属性未定义。

为什么read mode 中有body 属性undefined 以及如何访问它? (如果可能)

【问题讨论】:

  • 你解决过这个问题吗?我有同样的问题。
  • @SamStainsby:很遗憾,没有。
  • @SamStainsby 和 SyedAliTaqi 这取决于清单文件中的最低邮箱要求。Link 否则您必须使用 ews 请求。
  • @InfoÁsith 在dev.outlook.com/reference/add-ins/1.3/… 中将“正文”成员列为“最低邮箱要求集版本 1.1”,我们在清单中指定了它。这还不够吗?
  • @SamStainsby 是的,还不够。如果你仔细看,getAsync()setAsync() 函数在需求集版本 1.1 中并没有出现.此 Body 属性仅在需求集版本为 1.1 时支持少数方法

标签: outlook-addin office-js javascript-api-for-office


【解决方案1】:

这里是 getBody 函数。它使用了 CoercionType 类型

function getBody() {
        var _item = Office.context.mailbox.item;
        var body = _item.body;

        // Get the body asynchronous as text
        body.getAsync(Office.CoercionType.Html, function (asyncResult) {
            if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
                // TODO: Handle error
            }
            else {
                // Show data

                console.log('Body', asyncResult.value.trim());
            }
        });
    }

但上述功能是邮箱要求集 1.3 的一部分。 但是此功能在 Outlook mac 中不起作用,因为它的最低邮箱要求是 1.1

【讨论】:

    【解决方案2】:

    message.bodyOffice.context.mailbox.item.body 返回 Body 类型。尝试使用它来获取正文。

    Office.context.mailbox.item.body.getAsync('text', function (async) {console.log(async.value)});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-06
      • 1970-01-01
      • 1970-01-01
      • 2013-02-20
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      相关资源
      最近更新 更多