Получение тела письма без извлечения вложений, используя гем ruby ​​mail

Я пытаюсь получить тело gmail, используя IMAP и рубиновую почту. Он отлично работает, пока я получаю поле RFC822, как описано в другом ответе о переполнении стека., Фидл очень хорошо описал этот подход, чтобы ответить на аналогичный вопрос.

Этот подход хорош, за исключением того, что требует выборки RFC822, который также выбирает все вложения. Есть ли какое-либо другое поле или какой-то другой подход, который я могу использовать, чтобы не извлекать вложения, но все еще использовать гем ruby ​​mail, чтобы получить красиво декодированное тело?

1 ответ

Вы должны разобрать и понять фактическую структуру возвращаемых BODYSTRUCTURE ответ см. RFC 3501, p. 56 Также не забудьте применить соответствующие Content-Transfer-Encoding (лайк base64 или же quoted-printable) и использовать правильное преобразование кодировки (charset параметр Content-Type заголовок каждой части тела). Вся эта информация включена в BODYSTRUCTURE ответ; обратитесь к документации вашей библиотеки, чтобы узнать, как получить к ней доступ.

Другие вопросы по тегам