Имя: Пароль:
1C
1С v8
Проблема с авторизацией на стороннем web-сервисе
0 Климов Сергей
 
05.04.24
11:50
Необходимо получать данные от стороннего веб-сервиса. Делаю тестовое расширение с попыткой подключения. WSDL закачал в статическую WSссылку (сервис его не публикует). Вот код:

    Прокси = WSссылки.Лук_FbuExport.СоздатьWSПрокси("http://webdemand.lukoil.com/FbuExport/", "FbuExport", "FbuExportSoap");
    Прокси.Пользователь = Пользователь;
    Прокси.Пароль = Пароль;
    
    ТипWSПараметра = Прокси.ФабрикаXDTO.Пакеты.Получить("http://webdemand.lukoil.com/FbuExport/").Получить("GetTableData");
    WSПараметр       = Прокси.ФабрикаXDTO.Создать(ТипWSПараметра);
    WSПараметр.Npo       = "YNP";
    WSПараметр.UserName  = Пользователь;
    WSПараметр.Password  = Пароль;
    WSПараметр.TableName = "SRDOC";
    WSПараметр.BeginDate = Период.ДатаНачала;
    WSПараметр.EndDate   = Период.ДатаОкончания;

    РезультатXDTO = Прокси.GetTableData(WSПараметр);

WSПараметр корректно создаётся и заполняется. При выполнении последнего оператора возникает исключение:

Ошибка при вызове метода контекста (GetTableData)
{Лукойл Обработка.Лук_Обработка1.Форма.Форма.Форма(18)}:    РезультатXDTO = Прокси.GetTableData(WSПараметр);
{Лукойл Обработка.Лук_Обработка1.Форма.Форма.Форма(24)}:    Команда1НаСервере();
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса:  {http://webdemand.lukoil.com/FbuExport/}:FbuExport:GetTableData()
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка SOAP сервера:  Server was unable to process request. ---> Authorization required.
Код ошибки: Server
Техническая информация:
<detail xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="" target="_blank">http://www.w3.org/2001/XMLSchema-instance"/>


по причине:
При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса:  {http://webdemand.lukoil.com/FbuExport/}:FbuExport:GetTableData()
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка SOAP сервера:  Server was unable to process request. ---> Authorization required.
Код ошибки: Server
Техническая информация:
<detail xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="" target="_blank">http://www.w3.org/2001/XMLSchema-instance"/>

Пароль и Пользователь заполнены. Причём, если они не указаны - результат тот же. ЧЯДНТ?
1 Климов Сергей
 
05.04.24
11:51
Да, делаю то же самое в SOAP UI - всё ОК.
2 Климов Сергей
 
05.04.24
15:10
Причина оказалась в неверном параметре запроса, не в логине/пароле. Проблема решена.