Открыть в ПолеHTML картинку по ссылке

1. user-z99999 67 13.12.22 17:44 Сейчас в теме
Есть ссылка, картинка с камеры:
http://127.0.0.1/test.jpg

Нужно её открыть внутри 1с, например отображать как html документ внутри 1с.

Получается только так:
ПерейтиПоНавигационнойСсылке(СсылкаНаКартинку);

Открывается за пределами 1с.

А нужно внутри 1с, в обработке смотреть на картинку.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
11. spacecraft 13.12.22 19:04 Сейчас в теме +0.2 $m
(10) база файловая?
Попробовать обратиться не к локалхост, а по внешнему ip адресу.
Смотреть настройки брандмауэра.

Попробовать следующий код:
Соединение = Новый HTTPСоединение("localhost");
Запрос = Новый HTTPЗапрос("/test.jpg");
Ответ = Соединение.Получить(Запрос);
ДД = Ответ.ПолучитьТелоКакДвоичныеДанные();
РеквизитКартинка = ПоместитьВоВременноеХранилище(ДД, УникальныйИдентификатор);

РеквизитКартинка это строковый реквизит формы. Соответственно его нужно создать и вынести на форму, с указанием Вид "Поле картинки".
Если и так не покажет картинку, значит нет доступа к ней.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. пользователь 13.12.22 17:50
Сообщение было скрыто модератором.
...
5. user-z99999 67 13.12.22 18:08 Сейчас в теме
(3)
(2)
ошибка, Картинка = Новый ДвоичныеДанные
        СсылкаНаКартинку = "http://127.0.0.1/test.jpg";
	Картинка = Новый ДвоичныеДанные(СсылкаНаКартинку);
   	АдресВХ = ПоместитьВоВременноеХранилище(Картинка, Новый УникальныйИдентификатор);
   	ПолеHTML = "<!DO CTYPE html><ht ml><head></head><body><p><img src=" + АдресВХ + "></img></p></body></html>";
6. пользователь 13.12.22 18:17
Сообщение было скрыто модератором.
...
7. spacecraft 13.12.22 18:37 Сейчас в теме
(5) если нужно именно в html, то все проще:
СсылкаНаКартинку = "http://127.0.0.1/test.jpg";
       ПолеHTML = "<!DO CTYPE html><ht ml><head></head><body><p><img src=" + СсылкаНаКартинку + "></img></p></body></html>";
8. user-z99999 67 13.12.22 18:42 Сейчас в теме
(7)
СсылкаНаКартинку = "http://127.0.0.1/test.jpg";
ПолеHTML = "";

Картинка не отображается,
Прикрепленные файлы:
9. spacecraft 13.12.22 18:43 Сейчас в теме
(8) значит нет доступа к этой картинке.

а это:
ПолеHTML = "";

серьезно?
10. user-z99999 67 13.12.22 18:51 Сейчас в теме
(9)
значит нет доступа к этой картинке.

Нет доступа из 1с.
В браузере она открывается.

ПолеHTML = ""; // не обращай внимание, это сообщение обрезалось.
11. spacecraft 13.12.22 19:04 Сейчас в теме +0.2 $m
(10) база файловая?
Попробовать обратиться не к локалхост, а по внешнему ip адресу.
Смотреть настройки брандмауэра.

Попробовать следующий код:
Соединение = Новый HTTPСоединение("localhost");
Запрос = Новый HTTPЗапрос("/test.jpg");
Ответ = Соединение.Получить(Запрос);
ДД = Ответ.ПолучитьТелоКакДвоичныеДанные();
РеквизитКартинка = ПоместитьВоВременноеХранилище(ДД, УникальныйИдентификатор);

РеквизитКартинка это строковый реквизит формы. Соответственно его нужно создать и вынести на форму, с указанием Вид "Поле картинки".
Если и так не покажет картинку, значит нет доступа к ней.
12. user-z99999 67 13.12.22 19:14 Сейчас в теме
(11)
Соединение = Новый HTTPСоединение("localhost");
Запрос = Новый HTTPЗапрос("/test.jpg");
Ответ = Соединение.Получить(Запрос);
ДД = Ответ.ПолучитьТелоКакДвоичныеДанные();
РеквизитКартинка = ПоместитьВоВременноеХранилище(ДД, УникальныйИдентификатор);

Соединение = Новый HTTPСоединение("127.0.0.1",8091); // у меня не стандартный порт
Запрос = Новый HTTPЗапрос("/test.jpg");
Ответ = Соединение.Получить(Запрос); // здесь падает, пишет unsupported protocol
ДД = Ответ.ПолучитьТелоКакДвоичныеДанные();
РеквизитКартинка = ПоместитьВоВременноеХранилище(ДД, УникальныйИдентификатор);
13. spacecraft 13.12.22 19:19 Сейчас в теме
(12)
Соединение = Новый HTTPСоединение("127.0.0.1",8091); // у меня не стандартный порт

главное самые важные сведения приберечь до самого последнего.

тогда конечно не показывало картинку. Ее по стандартному порту просто нет.
14. spacecraft 13.12.22 19:23 Сейчас в теме
(12)
Ответ = Соединение.Получить(Запрос); // здесь падает, пишет unsupported protocol

Тогда разбирайтесь с настройками веб сервера и безопасностью.
К 1С это не имеет отношение.
3. coollerinc 185 13.12.22 17:58 Сейчас в теме
Поместите картинку во временное хранилище. Сделайте реквизит формы, с типом строка. В этот реквизит поместите адрес временного хранилища. Добавьте элемент формы связянным с данным реквизитом формы. И установите вид этого элемента формы, с типом картинка. примероно так.
4. SlavaKron 13.12.22 18:08 Сейчас в теме
Попробуйте через HTTP-запрос.
15. borisko 12.03.23 19:02 Сейчас в теме
Попробуй как-нибудь так. Но тут через сохранение файла к себе на комп.
ЗащищенноеСоед = Новый ЗащищенноеСоединениеOpenSSL(); //если соединение защищенное
Соединение = Новый HTTPСоединение("127.0.0.1",8091,,,,,ЗащищенноеСоед);
Запрос = Новый HTTPЗапрос("/test.jpg");
Ответ = Соединение.ВызватьHTTPМетод("GET",Запрос,"c:\test.jpg"); //тут сохранили файл к себе
Ответ = Соединение.Получить(Запрос, "c:\test.jpg"); //или так попробовать
//далее делаете что угодно с файлом.
УдалитьФайлы("c:\test.jpg");
16. Vlan 36 13.03.23 08:04 Сейчас в теме
А физически где файл расположен на сервере? Может не ссылкой загружать, а по Каталог+Имя?
И второй вопрос: "стороннее приложение", в котором открывается картинка - это браузер или что-то иное?
17. ONLYTILT 20 22.03.23 11:27 Сейчас в теме
А в чем проблема просто добавить поле HTML документа, и в реквизит записать ссылку на картинку? Типа:
Документ = "localhost/test.jpg"
Прикрепленные файлы:
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день