|
заголовки письма отправленного из 1с. ИнтернетПочтовоеСообщение ИнтернетПочтовоеВложение | ☑ | ||
---|---|---|---|---|
0
uesc
29.11.21
✎
12:54
|
можно ли програмно менять заголовки отправляемого из 1с письма?
Конкретно заголовок Mime-Version: 1.0 нужно заменить на большие буквы MIME-Version: 1.0 кусок письма: Mime-Version: 1.0 X-Priority: 3 (Normal) X-Mailer: 1C:Enterprise 8.3 Content-Type: multipart/mixed; boundary="------_6869_2094085696_18124" --------_6869_2094085696_18124 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Test --------_6869_2094085696_18124 Content-Type: application/pkcs7-signature; charset="UTF-8"; name="310748A_28.11.2021_01.xml.p7s" Content-Disposition: attachment; filename="310748A_28.11.2021_01.xml.p7s" Content-Transfer-Encoding: base64 столкнулись с проблемой - при програмном формировании и отправки письма с вложением (подписанный ЭЦП XML), скрипт принимающей стороны не может прочитать данный заголовок в таком виде как его формирует 1с Mime-Version: 1.0 - не воспринимает MIME-Version: 1.0 - воспринимает |
|||
1
polosov
29.11.21
✎
13:02
|
(0) ПолучитьИсходныеДанные()
Получаем из двоичных данных Меняем Переводим обратно в двоичные данные УстановитьИсходныеДанные() |
|||
2
uesc
29.11.21
✎
15:40
|
polosov спасибо, но:
Письмо = Новый ИнтернетПочтовоеСообщение; Письмо.СпособКодированияНеASCIIСимволов = СпособКодированияНеASCIIСимволовИнтернетПочтовогоСообщения.БезКодирования; Письмо.Получатели.Добавить("[email protected]"); ДВ = Письмо.Вложения.Добавить("C:\Users\Public\1241241240748A_28.11.2021_01.xml.p7s"); ДВ.ТипСодержимого = "application/pkcs7-signature"; Письмо.Тексты.Добавить("12312"); Асдф = Письмо.ПолучитьИсходныеДанные(); ТекстДВ = СтрЗаменить(ПолучитьСтрокуИзДвоичныхДанных(Асдф, "UTF-8"), "Mime-Version: 1.0", "MIME-Version: 1.0"); ДВК = ПолучитьДвоичныеДанныеИзСтроки(ТекстДВ, "UTF-8"); Письмо.ОбработатьТексты(); Письмо = Неопределено; Письмо = Новый ИнтернетПочтовоеСообщение; Письмо.УстановитьИсходныеДанные(ДВК); Ткст = Письмо.ПолучитьИсходныйТекст("UTF-8"); Профиль = Новый ИнтернетПочтовыйПрофиль; Профиль.АдресСервераSMTP = ""; Профиль.ПортSMTP = 465; Профиль.ПользовательSMTP = ""; Профиль.ПарольSMTP = ""; Профиль.ИспользоватьSSLSMTP = Истина; Почта = Новый ИнтернетПочта; Попытка Почта.Подключиться(Профиль); Почта.Послать(Письмо, ОбработкаТекстаИнтернетПочтовогоСообщения.НеОбрабатывать ); Сообщить("Email отправлено"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; Письмо = Неопределено; Дв = Неопределено; пробую так, текст в переменной заменяется, но письмо все равно приходит с Mime-Version вместо MIME-Version |
|||
3
polosov
29.11.21
✎
15:51
|
(2) А если так:
..... .... Асдф = Письмо.ПолучитьИсходныеДанные(); ТекстДВ = СтрЗаменить(ПолучитьСтрокуИзДвоичныхДанных(Асдф, "UTF-8"), "Mime-Version: 1.0", "MIME-Version: 1.0"); ДВК = ПолучитьДвоичныеДанныеИзСтроки(ТекстДВ, "UTF-8"); Письмо.УстановитьИсходныеДанные(ДВК); Ткст = Письмо.ПолучитьИсходныйТекст("UTF-8"); .... .... |
|||
4
uesc
29.11.21
✎
16:16
|
polosov
В ТКСТ уже правильный текст (заглавные буквы) , но письмо приходит все равно с маленькими Такое ощущение что на этот заголовок вообще ничего не влияет и он формируется в момент отправки каким-то образом (если например заменить по методике выше на MIME-Version 2.0 что лишено смысла - письмо все равно приходит с Mime-Version 1.0) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |