Тип: Строка. Содержит кодировку текстовых данных сообщения. Если кодировка не указана, будет использоваться значение кодировки из свойства Кодировка.
Полное описание, параметры и ограничения
ИнтернетТекстПочтовогоСообщения.Кодировка (InternetMailText.Encoding)
ИнтернетТекстПочтовогоСообщения (InternetMailText)
Кодировка (Encoding)
Доступен, начиная с версии 8.0.
Использование:
Чтение и запись.
Описание:
Тип: Строка.
Содержит кодировку текстовых данных сообщения. Если кодировка не указана, будет использоваться значение кодировки из свойства Кодировка.
Доступность:
Тонкий клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
Поддерживаемые коды кодировок (с учетом правил http://www.w3.org/TR/2004/REC-xml-20040204/#NT-EncName):
UTF-8
UTF-16
UTF-16BE
UTF-16LE
ISO-8859-1
US-ASCII
gb18030
iso-8859-2
iso-8859-3
iso-8859-4
iso-8859-5
iso-8859-6
iso-8859-7
iso-8859-8
iso-8859-9
iso-8859-13
iso-8859-15
Shift_JIS
EUC-JP
Big5
Big5-HKSCS
GBK
GB2312
GB_2312-80
EUC-KR
KSC_5601
windows-949
windows-874
cp866
KOI8-R
KOI8-U
windows-1250
windows-1251
windows-1252
windows-1253
windows-1254
windows-1255
windows-1256
windows-1257
windows-1258
macintosh
x-mac-cyrillic
ISO-2022-JP
ISO-2022-KR
ISO-2022-CN
ISO-2022-CN-EXT
HZ-GB-2312
См. также:
ИнтернетПочтовоеСообщение, свойство Кодировка
ИнтернетПочтовыйАдрес, свойство Кодировка
ИнтернетПочтовоеВложение, свойство Кодировка
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Задать собственный тип текста application/json
Строковый второй аргумент Добавить задаёт ПроизвольныйТекст. MIME-тип сообщает формат, но сам не проверяет поля JSON.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
В учебной базе выполните код на сервере. Письмо создаётся и разбирается в памяти; профиль почты, пароль, SMTP/IMAP и вызов Послать не нужны.
Все адреса заданы на учебном домене example.invalid. Не заменяйте их реальными адресами и не добавляйте отправку при первой проверке.
Письмо о двух учебных товарах не содержит персональных данных, реальных заказов и внешних HTML-ресурсов. Его текст не является счётом или подтверждением доставки.
Письмо = Новый ИнтернетПочтовоеСообщение;
Письмо.Кодировка = "UTF-8";
Письмо.Отправитель = "guide@example.invalid";
Письмо.ИмяОтправителя = "Учебный магазин";
Письмо.Получатели.Добавить("student@example.invalid");
Письмо.Тема = "Учебные товары";
Письмо.Тексты.Добавить("Книга: 3; Ручка: 1", ТипТекстаПочтовогоСообщения.ПростойТекст);
Письмо.Тексты.Очистить();
Часть = Письмо.Тексты.Добавить("{""code"":""A-01"",""quantity"":3}", "application/json");
Часть.Кодировка = "UTF-8";
Сообщить(Часть.ТипТекста = ТипТекстаПочтовогоСообщения.ПроизвольныйТекст);
Сообщить(Часть.ПроизвольныйТипТекста = "application/json");
Часть.ПроизвольныйТипТекста = "application/json; profile=guide";
Сообщить(СтрНайти(Часть.ПроизвольныйТипТекста, "profile=guide") > 0);
Сообщить(Часть.Текст = "{""code"":""A-01"",""quantity"":3}");Разбор по шагам
JSON задан собственной строкой; двойные кавычки экранированы по правилам BSL.
Строка MIME-типа во втором аргументе меняет ТипТекста на ПроизвольныйТекст.
ПроизвольныйТипТекста можно дополнить собственным параметром; содержимое JSON при этом не меняется.
Как проверить результат
Четыре сообщения Истина.
Получатель ещё не прочитал JSON и не подтвердил его контракт.
Ожидаемый результат
Разделены собственный MIME-тип текстовой части и её строковое содержимое.
На что обратить внимание
Объект письма и успешный разбор MIME не доказывают отправку, доставку, подлинность отправителя или прочтение.
Не используйте MIME-тип как замену ПрочитатьJSON, проверки типов и обязательных полей.
Некоторые почтовые клиенты могут показать такую часть как файл, а не обычный текст.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Добавить простой и HTML-текст с одинаковым смыслом
Тексты — коллекция частей письма. HTML не читается как BSL и не должен содержать неизвестные внешние ссылки; в уроке только собственный абзац.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
В учебной базе выполните код на сервере. Письмо создаётся и разбирается в памяти; профиль почты, пароль, SMTP/IMAP и вызов Послать не нужны.
Все адреса заданы на учебном домене example.invalid. Не заменяйте их реальными адресами и не добавляйте отправку при первой проверке.
Письмо о двух учебных товарах не содержит персональных данных, реальных заказов и внешних HTML-ресурсов. Его текст не является счётом или подтверждением доставки.
Письмо = Новый ИнтернетПочтовоеСообщение;
Письмо.Кодировка = "UTF-8";
Письмо.Отправитель = "guide@example.invalid";
Письмо.ИмяОтправителя = "Учебный магазин";
Письмо.Получатели.Добавить("student@example.invalid");
Письмо.Тема = "Учебные товары";
Письмо.Тексты.Добавить("Книга: 3; Ручка: 1", ТипТекстаПочтовогоСообщения.ПростойТекст);
Письмо.Тексты.Очистить();
Простой = Письмо.Тексты.Добавить("Книга: 3; Ручка: 1", ТипТекстаПочтовогоСообщения.ПростойТекст);
HTML = Письмо.Тексты.Добавить("<p>Книга: <strong>3</strong>; Ручка: <strong>1</strong></p>", ТипТекстаПочтовогоСообщения.HTML);
Простой.Кодировка = "UTF-8";
HTML.Кодировка = "UTF-8";
Сообщить(Письмо.Тексты.Количество() = 2);
Сообщить(Простой.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст);
Сообщить(HTML.ТипТекста = ТипТекстаПочтовогоСообщения.HTML);
Сообщить(СтрНайти(HTML.Текст, "<strong>3</strong>") > 0);
Письмо.Тексты.Удалить(HTML);
Сообщить(Письмо.Тексты.Количество() = 1);
Сообщить(Письмо.Тексты.Получить(0).Текст = "Книга: 3; Ручка: 1");Разбор по шагам
Убираем исходный текст только в собственном объекте, создаём две явно типизированные части.
Кодировка каждой части задана отдельно; тема и адресные имена имеют кодировку уровня письма.
Удаляем HTML по объекту коллекции, оставляя простой текст. Никакой браузер для проверки не открывается.
Как проверить результат
Шесть сообщений Истина: сначала две части, затем одна простая.
HTML задан только как строка; его отображение в почтовом клиенте здесь не проверяется.
Ожидаемый результат
Подготовлены и изменены две текстовые части собственного письма.
На что обратить внимание
Объект письма и успешный разбор MIME не доказывают отправку, доставку, подлинность отправителя или прочтение.
Не вставляйте пользовательский текст в HTML без экранирования.
Наличие двух частей не обещает конкретную компоновку multipart во всех версиях почтовых клиентов.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.