Здравствуйте
Пробую скачать файл по Апи. Адрес скрипта корректный (Ввожу его в строку браузера и файл скачивается )
В описание метода написано
Метод позволяет скачать файл. При скачивании содержимое файла отдаётся в виде потока, название файла отдаётся в HTTP заголовке Content-Disposition.
В 1с прилетает ответ в виде (см на фото)
Подскажите как такое нужно расшифровывать?
Пробую скачать файл по Апи. Адрес скрипта корректный (Ввожу его в строку браузера и файл скачивается )
В описание метода написано
Метод позволяет скачать файл. При скачивании содержимое файла отдаётся в виде потока, название файла отдаётся в HTTP заголовке Content-Disposition.
В 1с прилетает ответ в виде (см на фото)
Подскажите как такое нужно расшифровывать?
Прикрепленные файлы:
![](/upload/forum/upload/df3/df3b239bebfaaa9c3fdf4f0f22dad084.png)
По теме из базы знаний
- Выгрузка каталога товаров (прайса) в формате XLS, архивация полученного файла и отправка на FTP
- Быстрое обновление базы 1С из XML-файлов конфигурации (EDT-GIT)
- Загрузка отдельного файла из zip архива, расположенного на WEB-ресурсе
- Подключение функционала БСП "Присоединенные файлы" к функционалу Диадок
- Демонстрационный пример онлайн мобильного приложения (для отправки файлов с мобильного устройства)
Найденные решения
Процедура КакСохранитьКартинкуСайтаЧерезHttpЗапросНаКлиенте()
// Запрашивать через http можно не только html-страницы,
// но и другие объекты, доступные нам через http,
// например, картинки.
// Сохраним на диск и покажем пользователю картинку, которая
// размещена в интернете по адресу:
// thumb7.shutterstock.com/display_pic_with_logo/1014806/270790184/
// stock-photo-summer-holidays-background-sea-background-270790184.jpg
Соединение = Новый HTTPСоединение("thumb7.shutterstock.com", 80);
// Get-запрос к ресурсу на сервере.
Запрос = Новый HTTPЗапрос("/display_pic_with_logo/1014806/270790184/" +
"stock-photo-summer-holidays-background-sea-background-270790184.jpg");
Результат = Соединение.Получить(Запрос);
Сообщить("Нам вернули код " + Результат.КодСостояния);
// Сама картинка - уже в теле ответа, осталось
// только записать её в файл на диск в виде двоичных данных.
КаталогДляЭкспериментов = КаталогДокументов() + "\helpme1c.ru";
СоздатьКаталог(КаталогДляЭкспериментов);
ФайлКартинки = КаталогДляЭкспериментов + "\test.jpg";
// Записываем картинку на диск.
Результат.ПолучитьТелоКакДвоичныеДанные().Записать(ФайлКартинки);
Сообщить("Сохранили картинку по адресу " + ФайлКартинки);
// Покажем картинку пользователю.
ЗапуститьПриложение(ФайлКартинки);
КонецПроцедуры
Показать
(6) да, что-о я уработался сегодня
не обратил внимания на картинку, что там действительно "картинка" в ответ прилетает
вам надо ответ читать как двоичные данные
например так
ну а дальше вы уже их можете сохранить как файл, надо только с расширением покопать чтобы в правильном сохранилось
например так
вот и коллега в (8) тоже про это пишет
и даже с полным примером
не обратил внимания на картинку, что там действительно "картинка" в ответ прилетает
вам надо ответ читать как двоичные данные
например так
ДвоичныеДанныеКартинки = Ответ.ПолучитьТелоКакДвоичныеДанные();
ну а дальше вы уже их можете сохранить как файл, надо только с расширением покопать чтобы в правильном сохранилось
например так
лФайл = "C:\temp\\answer_001.jpg";
ДвоичныеДанныеКартинки.Записать(лФайл);
вот и коллега в (8) тоже про это пишет
и даже с полным примером
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
кодировки не совпадают
надо в запросе указать в какой кодировке нужен ответ, если это поддерживается апи
если нет, то принудительно менять кодировку для ответа, сохранив куда-нибудь со сменой кодировки и уже потом читать
надо в запросе указать в какой кодировке нужен ответ, если это поддерживается апи
если нет, то принудительно менять кодировку для ответа, сохранив куда-нибудь со сменой кодировки и уже потом читать
(6) да, что-о я уработался сегодня
не обратил внимания на картинку, что там действительно "картинка" в ответ прилетает
вам надо ответ читать как двоичные данные
например так
ну а дальше вы уже их можете сохранить как файл, надо только с расширением покопать чтобы в правильном сохранилось
например так
вот и коллега в (8) тоже про это пишет
и даже с полным примером
не обратил внимания на картинку, что там действительно "картинка" в ответ прилетает
вам надо ответ читать как двоичные данные
например так
ДвоичныеДанныеКартинки = Ответ.ПолучитьТелоКакДвоичныеДанные();
ну а дальше вы уже их можете сохранить как файл, надо только с расширением покопать чтобы в правильном сохранилось
например так
лФайл = "C:\temp\\answer_001.jpg";
ДвоичныеДанныеКартинки.Записать(лФайл);
вот и коллега в (8) тоже про это пишет
и даже с полным примером
Процедура КакСохранитьКартинкуСайтаЧерезHttpЗапросНаКлиенте()
// Запрашивать через http можно не только html-страницы,
// но и другие объекты, доступные нам через http,
// например, картинки.
// Сохраним на диск и покажем пользователю картинку, которая
// размещена в интернете по адресу:
// thumb7.shutterstock.com/display_pic_with_logo/1014806/270790184/
// stock-photo-summer-holidays-background-sea-background-270790184.jpg
Соединение = Новый HTTPСоединение("thumb7.shutterstock.com", 80);
// Get-запрос к ресурсу на сервере.
Запрос = Новый HTTPЗапрос("/display_pic_with_logo/1014806/270790184/" +
"stock-photo-summer-holidays-background-sea-background-270790184.jpg");
Результат = Соединение.Получить(Запрос);
Сообщить("Нам вернули код " + Результат.КодСостояния);
// Сама картинка - уже в теле ответа, осталось
// только записать её в файл на диск в виде двоичных данных.
КаталогДляЭкспериментов = КаталогДокументов() + "\helpme1c.ru";
СоздатьКаталог(КаталогДляЭкспериментов);
ФайлКартинки = КаталогДляЭкспериментов + "\test.jpg";
// Записываем картинку на диск.
Результат.ПолучитьТелоКакДвоичныеДанные().Записать(ФайлКартинки);
Сообщить("Сохранили картинку по адресу " + ФайлКартинки);
// Покажем картинку пользователю.
ЗапуститьПриложение(ФайлКартинки);
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот