7.7 V7HttpReader, проблемы с его методы.

Тема в разделе "Обмен данными в "1С:Предприятие 7.7"", создана пользователем Infinita, 11 авг 2009.

  1. TopicStarter Overlay
    Infinita
    Offline

    Infinita

    Регистрация:
    2 авг 2008
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток!

    Пытаюсь с одного сайта (сайта нашей организации) получить информацию, хочу сохранить ее в xml виде, потом распарсить и на основе этого файла сделать документы.

    1. Сделал сначала так:
    ....
    Соединение.ПолучитьКакФайл("http://адрес/script/realization2xml?date1="+НачДата+"&date2="+КонДата+"&tis_num=0003", Путь); (где Путь = "c:\price.xml";)
    Если диапазон дат небольшой (2 дня), т.е. файл получается маленький и все сохраняется без проблем. Если же диапазон большой (10 дней), то файл принимается незаконченным. Выполнив несколько раз, удалось установить, что файл обрывается, достигнув 1000 символов. Это что, получается, есть какое-то ограничение? Тоже самое происходило при применениее метода ПолучитьКакСтроку

    2. Потом побробовал другой вариант:
    ...
    Соединение.Получить("http://адрес/script/realization2xml?date1="+НачДата+"&date2="+КонДата+"&tis_num=0003", Путь, 1);

    Происходит ошибка:
    Компонента V7Plus : Ошибка обращения к ресурсу (статус 406)
    Соединение.СтрокаСостоянияОтвета выдает такое сообщение: "HTTP/1.1 406 Not Acceptable".
    Может, я как-то не так юзаю метод Получить()?

    Буду очень благодарен любым советам.
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Такая ошибка характерна при отсутствии подключения к интернет.
    1) Действительно есть подключение?
    2) Фаевол? (пробовал временно отключить)
    3) Антивирь? (особливо касперский может чудить)
  3. TopicStarter Overlay
    Infinita
    Offline

    Infinita

    Регистрация:
    2 авг 2008
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    Так, начав играться с файерволом и антивирем, случайно нашел опечатку в адресной строке метода Получить(). теперь он не выдает ошибки, но файл все равно принимает тоже только длиной в 1000 символов.
  4. TopicStarter Overlay
    Infinita
    Offline

    Infinita

    Регистрация:
    2 авг 2008
    Сообщения:
    10
    Симпатии:
    0
    Баллы:
    1
    В итоге решил путем при помощи найденной в Интернете процедуры.

    Код:
    //*******************************************
    Процедура СохранитьФайлИзИнтернета(Ссылка)
    
    Скрипт = СоздатьОбъект("MSScriptControl.ScriptControl");
    Скрипт.language = "vbscript";
    
    x = CreateObject("Microsoft.XMLHTTP");
    x.Open("GET", Ссылка, 0,"","");
    x.Send();
    
    s = CreateObject("ADODB.Stream");
    s.Mode = 3;
    s.Type = 1;
    s.Open();
    
    Скрипт.AddObject("s",s);
    Скрипт.AddObject("x",x);
    Скрипт.Eval("s.Write(x.responseBody)");
    
    s.SaveToFile(Путь, 2);
    
    КонецПроцедуры
    //*******************************************
    
  5. maestro_voln
    Offline

    maestro_voln

    Регистрация:
    25 сен 2016
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    а как в эту процедуру запихнуть xml файл для отправки на сервер?
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В данной процедуре получают, а не отправляют
  7. maestro_voln
    Offline

    maestro_voln

    Регистрация:
    25 сен 2016
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    я заметил, именно поэтому я и спросил
Похожие темы
  1. Tantor
    Ответов:
    3
    Просмотров:
    2.815
  2. pentu
    Ответов:
    1
    Просмотров:
    615
  3. Алексей1989
    Ответов:
    1
    Просмотров:
    329
  4. nbIpKuH_BaH9I
    Ответов:
    19
    Просмотров:
    556
Загрузка...

Поделиться этой страницей