Вход | Регистрация
 

Взаимодействие браузеров с веб-клиентом 1с

Взаимодействие браузеров с веб-клиентом 1с
Я
   СинийКот
 
31.08.20 - 14:27
Если есть необходимость запустить в хроме на веб-клиенте те команды, которые не поддерживаются браузером, нужно переписывать синхронные методы в общем модуле или можно как-то малой кровью обойтись?
   Энштейн 1С
 
1 - 31.08.20 - 14:29
(0) Вот только сам разбираюсь с веб-сервисами, там не только в общем модуле надо исправлять, но там есть код и в самих веб-сервисах
   Юрий Лазаренко
 
2 - 31.08.20 - 14:32
(0) " те команды, которые не поддерживаются браузером" - какие, например?
   Энштейн 1С
 
3 - 31.08.20 - 14:35
(2) format c:\
   СинийКот
 
4 - 31.08.20 - 14:36
(2) Например, к документу прикрепляется файл, а обновить его на диске потом не получается - нужно расширение. В хроме расширение есть - команда не поддерживается, в IE команда поддерживается - расширение хз где. Да и вообще от перспектив работы в IE мой коллектив впадает в гомерический хохот.
   ДенисЧ
 
5 - 31.08.20 - 14:36
нужно
   Юрий Лазаренко
 
6 - 31.08.20 - 15:00
(4) Есть речь о прикреплении файла, то как вариант на форме документа разместить поле html-документа с input type=file. При клике на него выбирается файл и потом несколькими строками javascript отправляется как двоичные данные в http-сервис 1Ски. Вместе с двоичными данными в заголовках передается UID документа, к которому этот файл прикрепляется. Что-то типа
    var formData = new FormData();

    formData.append("myFile", document.getElementById("file").files[0], 'chris1.jpg');
    var xhr = new XMLHttpRequest();
    xhr.open("POST", "http://<server>/<base>/hs/<myservice>/<mymethod>";);
    xhr.send(formData);

HTTP-сервисом файл принимается и из двоичных данных превращается собственно файл. Теоретически работать должно, но надо проверить. В последние годы в браузеры дофига всего добавили с точки зрения безопасности, сервер может отлупить http-запрос от вложенного поля html. Можно попробовать фрейм в поле html разместить и уже в нем input type=file. В общем, надо экспериментировать.
   sikuda
 
7 - 31.08.20 - 16:28
(1) Записать все вирусы на мой компьютер? Нет лучше ново-модно асинхронно!
   lodger
 
8 - 31.08.20 - 16:31
(0) "веб-клиент" и "малой кровью", если у вас не современное тиражное решение, не совместимые понятия.
придется разобраться, что такое начатьподключениерасширенияработысфайлами и как с этим жить. в хроме это работает, правда.
   СинийКот
 
9 - 11.09.20 - 11:20
Извините, подостаю вас здесь еще. Пытался все-таки переписать общий модуль, но полноценно синхронный вызов переписать не удается. И после того, как заменил подключитьрасширенияработысфайлами на начатьподключениерасширенияработысфайлами, пишет "расширение не подключено", хотя в завершающей процедуре флаг Подключено ставится в Истину. И 1СExtension скачалось и установилось.
Конкретно пытаюсь исправить процедуру ОбновитьИзФайлаНаДиске и ОбновитьИзФайлаНаДискеСОповещением соответственно.

Процедура ОбновитьИзФайлаНаДиске(ОбработчикРезультата, ДанныеФайла, ИдентификаторФормы)
    Если Не РасширениеРаботыСФайламиПодключено() Тогда
        //ВернутьРезультат(ОбработчикРезультата, Ложь);

        //Возврат;

        Оповещение = Новый ОписаниеОповещения("РасширениеПодключено", ЭтотОбъект);
        НачатьПодключениеРасширенияРаботыСФайлами(Оповещение);

    КонецЕсли; 
..//текст типовой конфы

КонецПроцедуры

Процедура РасширениеПодключено(Подключено, ДополнительныеПараметры) Экспорт
    Если НЕ Подключено Тогда
        НачатьУстановкуРасширенияРаботыСФайлами();
    КонецЕсли;
КонецПроцедуры
   СинийКот
 
10 - 11.09.20 - 14:16
Нет идей? Или просто я задолбал?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.