Привет.
Бьюсь на задачей передачи изображения. Перепробовал разные методы, но сервер все все упирается: {"message":"The browser (or proxy) sent a request that this server could not understand."} Подозреваю, что проблема в том, что в теле запроса помимо двоичных данных не указан ключ "file". Подскажите, кто знает, как это сделать?
Вот рекоммендации техподдержки сайта:
разделитель = "test";
ФайлОтвета = КаталогВременныхФайлов()+ "\answer.txt";
потоквпамяти = новый потоквпамяти();
записьданных = новый записьданных(потоквпамяти);
ДвоичныеДанные = Новый ДвоичныеДанные("C:\pics\797-BILA-779-B.jpg");
записьданных.Записатьстроку("--"+разделитель);
записьданных.Записать("file: ");
записьданных.Записать(ДвоичныеДанные);
записьданных.Записатьстроку("");
записьданных.Записатьстроку("--"+разделитель+"--");
записьданных.Закрыть();
телозапроса = потоквпамяти.ЗакрытьИПолучитьДвоичныеДанные();
Соединение = Новый HTTPСоединение("backend.mydrop.com.ua",,,,,,Новый ЗащищенноеСоединениеOpenSSL());
Запрос = Новый HTTPЗапрос("/vendor/products/upload");
Запрос.Заголовки.Вставить("X-API-KEY", "ххх");
Запрос.Заголовки.Вставить("Content-Type", "multipart/form-data; boundary=" + разделитель);
запрос.УстановитьТелоИзДвоичныхДанных(телозапроса);
Ответ = Соединение.ОтправитьДляОбработки(Запрос, ФайлОтвета);
Multilobster @ 01.09.22, 13:15
,
Рекомендую поставить Fiddler и подсмотреть корректные передачи через браузер.
В свое время так изучал хотелки веб-сервиса промышленного контроллера Siemens.
А я передаю как текст. Летает в обе стороны отлично и какой тип файла уже не имеет значения. Файл - Двоичные данные - Base64 Строка. Передаю картинки и pdf.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua