Как изменить текст Content-Type в node-outlook для получения сообщений электронной почты? - PullRequest
1 голос
/ 27 марта 2020

Я использую node.js для извлечения сообщений тела из MS Outlook. Для этого был использован пакет node-outlook . Однако возвращаемый тип содержимого - 'HTML' , которого я стараюсь избегать. Это мой код:

index. js

var queryParams = {
  '$select': 'Body',
  '$orderby': 'ReceivedDateTime desc',
  '$top': 10
};

// Set the API endpoint to use the v2.0 endpoint
outlook.base.setApiEndpoint('https://outlook.office.com/api/v2.0');
// Set the anchor mailbox to the user's SMTP address
outlook.base.setAnchorMailbox(email);

outlook.mail.getMessages({token: token, odataParams: queryParams},
  function(error, result){
    if (error) {
      console.log('getMessages returned an error: ' + error);
    }
    else if (result) {
      result.value.forEach(function(message) {
        console.log(' Body: ' + message.Body);

      });
    }
  });

, который возвращает этот тип тела:

"ContentType": "HTML",
"Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body style=\"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;\">\r\n<div>This is the body</div>\r\n</body>\r\n</html>\r\n"

Но я хочу это содержание как plain text вот так:

"ContentType" : "text",
"Content" : "this is body"

Я прочитал документацию и нашел, отправив заголовок таким образом

Prefer: outlook.body-content-type="text" 

Я могу получить мой желаемый результат. Но проблема в том, что я не знаю, как я могу использовать это свойство в моем коде. Как я буду реализовывать это в outlook.mail.getMessages[callback] или есть другой способ? Любая помощь будет оценена. Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...