Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Получить ответ от Web сервиса

Получить ответ от Web сервиса
Я
   grasshoper
 
12.03.20 - 09:51
День добрый. Кто знает, как послать запрос на веб сервис и получить от него ответ? Нужно со стороннего сайта получить список документов. В документации по интеграции с сервисом написано только описание методов и полей и есть пример запроса, вот только как его передать на сайт:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema">;
    <SOAP-ENV:Body>
        <m:QueryDocuments xmlns:m="http://testserver.ru/">;
            <m:username>MyName</m:username>
            <m:password>MyPassword</m:password>
        </m:QueryDocuments>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Пробую такой вариант отправки запроса:
HTTP_Соединение = Новый HTTPСоединение("testserver.ru", , , , , , Новый ЗащищенноеСоединениеOpenSSL);
    
HTTP_Запрос = Новый HTTPЗапрос;    
HTTP_Запрос.УстановитьТелоИзСтроки(ТекстЗапроса, КодировкаТекста.UTF8);    
HTTP_Ответ = HTTP_Соединение.ОтправитьДляОбработки(HTTP_Запрос);

ТекстОтвета = HTTP_Ответ.ПолучитьТелоКакСтроку();

Но в ответ мне кидает код главной страницы сайта
 
 
   butterbean
 
1 - 12.03.20 - 10:00
(0) во-первых нужно .Получить(), а не .ОтправитьДляОбработки()
   grasshoper
 
2 - 12.03.20 - 10:14
(1) В ответе ничего не поменялось, возвращает код главной страницы сайта.
   grasshoper
 
3 - 12.03.20 - 10:26
Как правильно составить запрос и послать на сайт?
   arsik
 
4 - 12.03.20 - 10:29
(1) Это не поможет, ему же нужно через вебсервис, а в примере он через обычный http сервис пытается с сервисом общаться.
   Feunoir
 
5 - 12.03.20 - 10:38
(0) Ну конечно главную. Ты же в HTTP запросе не указываешь какой ресурс ты хочешь получить.

Запрос = Новый HTTPЗапрос(Ресурс, Заголовки);

(1) Не факт. Получить это GET, ОтправитьДляОбработки это POST. Как АПИ сайта хочет, так и надо отправлять.
   grasshoper
 
6 - 12.03.20 - 10:44
(5) Дак как слепить?
   pechkin
 
7 - 12.03.20 - 10:47
зачем веб сервис отсылать через http ?
   J_B
 
8 - 12.03.20 - 10:48
   grasshoper
 
9 - 12.03.20 - 10:52
(7) дак я и спрашиваю как прикрутить чтобы работало.
   grasshoper
 
10 - 12.03.20 - 10:52
(8) Статья хорошая, но веб сервис сторонний а не в базе 1С.
   Feunoir
 
11 - 12.03.20 - 10:54
(6) Внимательно почитать доку, взять внешний SOAP клиент. Типа SoapUI или Boomerang (https://chrome.google.com/webstore/detail/boomerang-soap-rest-clien/eipdnjedkpcnlmmdfdkgfpljanehloah). Сначала в них научиться получать список документов, а потом уже переносить это дело в 1С. И, как тебе уже писали вместо HTTP использовать WS-ссылки
   grasshoper
 
12 - 12.03.20 - 10:57
(11) Ну вот уже что-то дельное.
   J_B
 
13 - 12.03.20 - 10:59
(10) В разделе 3 есть пример обращения к веб-сервису... Без разницы на чем он сделан - принципы вызова методов будут аналогичные

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