Как получить почтовое тело за 255 символов? - PullRequest
0 голосов
/ 27 сентября 2018

Я получаю электронные письма через следующий код, но я получаю только 255 символов вместо всего тела.

Есть ли способ снять это ограничение?

const api = client
  .api("/me/mailfolders/inbox/messages")
  .top(10)
  .select("subject,from,receivedDateTime,isRead,bodyPreview")
  .orderby("receivedDateTime DESC")
  .get((err, res) => {
    if (err) {
      console.log("getMessages returned an error: " + err.message);
    } else {
      console.log("Mails are retrieving...");

      res.value.forEach(function(message) {
        console.log(message.bodyPreview);
      });
    }
  });

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Мутхуратинам верен, но ради ясности и будущего использования я добавлю более подробный ответ.

Ваш код запрашивает только следующие свойства:

  • subject
  • from
  • receivedDateTime
  • isRead
  • bodyPreview

Причина, по которой вы получаете только 255 символов сообщения, заключается в том, что вы запрашиваете bodyPreview.Глядя на документацию, bodyPreview определяется следующим образом:

bodyPreview - String - первые 255 символов тела сообщения.Он находится в текстовом формате.

На самом деле вы ищете свойство body.Свойство body возвращает объект itemBody, который содержит два свойства:

  • content - Содержимое элемента.
  • contentType- тип контента.Возможные значения: Text и HTML.

Это означает, что вместо console.log(message.bodyPreview) вам нужно будет использовать console.log(message.body.content).

Вот ваш пример кода, реорганизованный для использования body:

const api = client
  .api("/me/mailfolders/inbox/messages")
  .top(10)
  .select("subject,from,receivedDateTime,isRead,body")
  .orderby("receivedDateTime DESC")
  .get((err, res) => {
    if (err) {
      console.log("getMessages returned an error: " + err.message);
    } else {
      console.log("Mails are retrieving...");

      res.value.forEach(function(message) {
        console.log(message.body.content);
      });
    }
  });
0 голосов
/ 27 сентября 2018

Вы ищете почтовое тело.Поэтому попробуйте выбрать body вместо bodyPreview.Вот пример графика документации , в ответе которого есть тело.

...