Обмен данными с сайтом методом POST

Данная статья предназначена для тех, кому лень разбираться с методами создания POST-запроса и его содержимого

Господа, доброго времени суток !!!

Лень  — это двигатель прогресса, и когда я получил задание выгружать данные на сайт методом POST, я сначала начал читать и разбираться, что это и с чем это «едят» )))

Прочитано было много, и я подумал, что должны быть методы достижения цели проще.

Встречайте, волшебная dll, которая облегчит обмен с сайтом.


Опишу некоторые методы, которых будет достаточно для выгрузки данных на сайт:

Инициализация компоненты:

1с 77:

Если ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"1CPost.dll")=1 Тогда 
Попытка  Компонента = СоздатьОбъект("AddIn.1CPost");
Исключение  Сообщить(ОписаниеОшибки());
КонецПопытки;
Иначе  Сообщить("Не загружена компонента 1CPost");
КонецЕсли;

1с 8.x:

Попытка  ЗагрузитьВнешнююКомпоненту(КаталогИБ()+"1CPost.dll");
Компонента = Новый ("AddIn.1CPost");
Исключение  Сообщить(ОписаниеОшибки());
КонецПопытки;

Методы компоненты:

Они одинаковы для 1с 77 и 1с 8.х.

Данные = Новый ТекстовыйДокумент; 
Сайт = "TestYZ.ru"; 
Логин = "Привет";
Пароль = "Сайт"; 
// Загружаем данные 
Компонента.www_post_ДобавитьПараметрMD5(Логин,Пароль); 
Компонента.www_post_ДобавитьПараметр("mode", "insert"); 
Компонента.www_post_ДобавитьПараметр("data",Данные); 
Результат=Компонента.www_post_Выполнить(СокрЛП(Сайт), "/import.php"); 
// где, Результат - это ответ сервера 
// "mode" и "data" переменные согласованные с программистом вэб-сайта 
// "/import.php" - название скрипта опять же, от программиста вэб-сайта 

Компоненты и данных методов достаточно для простейшей выгрузки данный на сайт методом POST.

P.S.: Данный метод не является универсальным, уже хотя бы потому, что нужна компонента, но … если Вам нужна быстрая и несложная выгрузка данных на сайт, то эта статья для Вас.

Ссылка на использованные статьи:

 //infostart.ru/public/84126/


2 Comments

  1. tarikss

    А не проще использовать

    Новый COMОбъект(«WinHttp.WinHttpRequest.5.1»)

    ? и не нужно внешнюю компоненту!

    Reply
  2. VasRogov

    (1) Может и проще, но …

    а) Это альтернативный метод (пусть даже при помощи dll), а когда есть выбор это гуд )))

    б) Насколько я понял, это тоже библиотека, но винды

    (http://msdn.microsoft.com/enus/library/windows/desktop/aa383979(v=vs.85).aspx), а если это не винда, то …

    в) Нужно все равно знать как собирается Header например

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *