Как грамотно отправить pdf-файл через http-запрос?

1. user1577410 27.09.22 07:11 Сейчас в теме
В компании есть некая система куда с 1С ЗУП заливаю пдф документы который хранится в РС в
реквизите типа ХранилищеЗначения.
При отправке система возвращает адрес путь к базе примерно такой https://ххх.kz/ннн/580c85abb
Если прогнать через Posman то нормально открывается файл из https://ххх.kz/ннн/580c85abb
А с 1С оправленный не открывается хотя система ее записывает у себя и ответ успешно - 200.
Вот ниже код:
СтрокаНабора = НаборЗаписей[0];
ИмяВременногоФайла = КаталогВременныхФайлов() + ТипДокумента;
ДвоичныйФайл = СтрокаНабора.Файл.Получить();
Если ДвоичныйФайл <> Неопределено Тогда
ДвоичныйФайл.Записать(ИмяВременногоФайла+".pdf");
Иначе
Сообщить("Файл для отправки не прикреплен!");
Возврат
КонецЕсли;
АдресСтраницы = "/ХХХХХХХ/pdf";
Хост = "YYYY.YYY.kz";
МойТокен = "******************";
Строка64 = Base64Строка(ДвоичныйФайл);
// передадим данные на сервер
Заголовки = Новый Соответствие();
Заголовки.Вставить("Content-Length", XMLСтрока(ДвоичныйФайл.Размер()));
//Заголовки.Вставить("Content-Type", "application/pdf");
Заголовки.Вставить("Content-Type", "text/plain");
Заголовки.Вставить("Authorization", "Bearer "+ МойТокен);
//Заголовки.Вставить("User-Agent", "PostmanRuntime/7.29.2");
Заголовки.Вставить("Accept-Encoding", "*/*");
Заголовки.Вставить("Accept", "gzip, deflate, br");
Заголовки.Вставить("Connection", "keep-alive");
ЗапросHTTP = Новый HTTPЗапрос(АдресСтраницы,Заголовки );
//ЗапросHTTP.УстановитьТелоИзДвоичныхДанных(ДанныеТела); // установили тело
ЗапросHTTP.УстановитьТелоИзСтроки(Строка64); // установили тело
// передадим данные на сервер
Соединение = Новый HTTPСоединение(Хост,443,,,,,Новый ЗащищенноеСоединениеOpenSSL);
ОтветHTTP = Соединение.ОтправитьДляОбработки(ЗапросHTTP); // финал
//ОтветHTTP = Соединение.ВызватьHTTPМетод("POST",ЗапросHTTP);
Сообщить(ОтветHTTP.ПолучитьТелоКакСтроку());

ЧЯНТД?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SanyMaga 68 27.09.22 08:56 Сейчас в теме
Попробуй:

СтрокаНабора = НаборЗаписей[0];
ИмяВременногоФайла = КаталогВременныхФайлов() + ".pdf";
ДвоичныйФайл = СтрокаНабора.Файл.Получить();
ДвоичныйФайл.Записать(ИмяВременногоФайла);

....................

ЗапросHTTP.УстановитьИмяФайлаТела(ИмяВременногоФайла) ;

....................

Показать

и заголовки не заполняй (кроме токен). должны сами нужные заполниться.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот