POST запрос

04.02.10

Разработка - Запросы

Послать POST запрос и получить ответ.

Недавно столкнулся с необходимостью отправки post запросов из 1С 8.1 но ничего внятного так и не нашёл.

Предлагаю свой вариант решения проблемы.

До логического конца не дошёл ещё, как только доработаю, выложу обработку.

Функция ТекстЗапросБаланса(Пользователь,Пароль)
    Результат = "<?xml version=""1.0"" encoding=""utf-8""?>" +
                "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">" +
                    "<soap:Body>" +
                        "<GetCreditBalance xmlns=""http://api.prostor-sms.ru/WebService.asmx"">" +
                            "<smsUser>" + Пользователь + "</smsUser>" +
                            "<password>" + Пароль + "</password>" +
                        "</GetCreditBalance>" +
                    "</soap:Body>" +
                 "</soap:Envelope>";
     Возврат Результат;
КонецФункции


Процедура ПослатьЗапрос()
    ИмяСервера= "http://api.prostor-sms.ru/WebService.asmx";
    Логин= "";
    Пароль= "";
    MSXML = Новый COMОбъект("MSXML2.XMLHTTP.4.0");
    MSXML.open("POST", ИмяСервера, 0);
    MSXML.setRequestHeader("Accept", "text/xml; charset=utf-8");
    MSXML.setRequestHeader("Cache-Control","no-store, no-cache, must-revalidate");
    MSXML.setRequestHeader("Cache-Control","post-check=0, pre-check=0");
    MSXML.setRequestHeader("SOAPAction", "http://api.prostor-sms.ru/WebService.asmx/GetCreditBalance");
    ЗапросXML = ТекстЗапросБаланса(Логин, Пароль);
    MSXML.send(ЗапросXML);
    ОтветПолучен = Ложь;
    Для НомерЦикла = 1 по 100 Цикл
        Если MSXML.readyState > 3 Тогда
            ОтветПолучен = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если ОтветПолучен Тогда
        Результат = MSXML.responseXML.xml;
        xmlDoc = Новый COMОбъект("MSXML2.DOMDocument"); 
        xmlDoc.async = 0;
        xmlDoc.LoadXML(Результат);
        ЧтениеXML = Новый ЧтениеXML;
        ЧтениеXML.УстановитьСтроку(Результат);
        GetCreditBalanceResult = 0;
        creditBalance =  0;
        Пока ЧтениеXML.Прочитать() Цикл
        КонецЦикла;
    КонецЕсли;
КонецПроцедуры

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    177610    986    403    

943

Обновление 1С Запросы Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Данный инструмент помогает анализировать доработанную конфигурацию после обновления на новый релиз и находить «битые» тексты запросов, в которых участвуют несуществующие в новом релизе метаданные.

2 стартмани

06.02.2025    1770    14    XilDen    26    

35

Запросы Программист Бесплатно (free)

Увидел cheatsheet по SQL и захотелось нарисовать подобное, но про запросы.

18.10.2024    12396    sergey279    18    

65

Запросы Программист Платформа 1С v8.3 Запросы 1C:Бухгалтерия Бесплатно (free)

Столкнулся с интересной ситуацией, которую хотел бы разобрать, ввиду её неочевидности. Речь пойдёт про использование функции запроса АВТОНОМЕРЗАПИСИ() и проблемы, которые могут возникнуть.

11.10.2024    7419    XilDen    36    

90

Запросы Программист Запросы Бесплатно (free)

Отлаживая взаимодействие с базой данных, мы регулярно сталкиваемся с зависающими или подозрительно долго выполняющимися обращениями, негативно влияющими на производительность. О том, как в PostgreSQL выявить подозрительные запросы, основываясь на доступной о них информации, расскажем в статье.

16.08.2024    10053    user1840182    5    

29

Математика и алгоритмы Запросы Программист Платформа 1С v8.3 Запросы Бесплатно (free)

Рассмотрим быстрый алгоритм поиска дублей с использованием hash функции по набору полей шапки и табличных частей.

08.07.2024    3005    ivanov660    9    

22

Запросы СКД Программист Стажер Система компоновки данных Россия Бесплатно (free)

Часто при разработке отчетов в СКД возникает ситуация, когда не совсем понятно, почему отчет выводит не те данные, которые нужны, либо не выводит вовсе. Возникает потребность увидеть конечный запрос, который формирует СКД. Как это сделать, рассмотрим в этой статье.

15.05.2024    11914    implecs    6    

49
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 483 05.02.10 08:38 Сейчас в теме
По статистие большинство веток формумов в интернете заканчиваются сообщением примерно с таким содержанием - "Спасибо, сейчас попробую, обязательно отпишу".
Надеюсь обработку выложишь )))
2. Andrew_flyer 84 05.02.10 12:43 Сейчас в теме
:) Статистика знает всё)
Сдвиги есть, так что выложу уже сегодня!
3. Andrew_flyer 84 05.02.10 13:31 Сейчас в теме
4. Arabo_xv 5 08.02.10 13:31 Сейчас в теме
(0)
Есть такой объект в 1С - HTTPСоединение
Не могу понять за чем нужно использовать COM для того что 1С умеет делать. Тут однозначно минус ставить надо за незнание предметной области.
6. Andrew_flyer 84 24.02.10 16:51 Сейчас в теме
7. lame 76 12.05.10 07:13 Сейчас в теме
вот мой рабоичй пример на POST-GET

http://infostart.ru/public/20383/
8. Andrew_flyer 84 17.05.10 11:17 Сейчас в теме
(7) кроме "HTTPСоединение" ни чего интересного тут не используется!
Интересно именно в виде xml запроса!
Кто сталкивался, пишите
9. Andrew_flyer 84 17.05.10 12:49 Сейчас в теме
В добавлении, рекомендую ознакомиться с механизмом преобразования строки в URL!!!
http://infostart.ru/public/70330/
10. lame 76 25.05.10 02:01 Сейчас в теме
Интересно именно в виде xml запроса

и в чем разница то ?
как сделаешь со стороны сервера разбор запроса - так и надо посылать.
если у тебя обработчик на сервере обрабатывает только xml-то конечнео надо посылать только xml.
в моем примере - никакого изврата. Посылается строка с параметрами типа
"&Parametr1="+Параметр1+"&Parametr2="+Параметр2;
все просто и элементарно.

тебе может показать пример формирования xml ?
11. postnet 38 31.08.10 17:31 Сейчас в теме
Зачем мучатся, все эти методы и именно для рассылки уже реализованы http://www.infostart.ru/public/65932/ И получение баланса и отправка SMS все есть и работает все через эти сервисы напрямую. Проверьте ваши логин и пароль. :D
Оставьте свое сообщение