|   |   | 
| 
 | Веб-сервис и авторизация | ☑ | ||
|---|---|---|---|---|
| 0
    
        pessok 30.09.15✎ 15:18 | 
        Коллеги, привет! Проштудировал темы с этой же ошибкой, решения из них не помогли.
 Итак: создан простейший веб-сервис для теста. Возвращает наименование номенклатуры и код. Хочу посмотреть, что на выходе, подключаюсь через SoapUI, ввожу адрес веб-сервиса. Он просит ввести данные авторизации, ввожу (parser, 1), все логинится. Можно посмотреть схему етц. Если ввести некорректные данные, то сразу вываливает ошибку и не дает ничего посмотреть. Когда начинаю выполнять сам запрос, то ругается на авторизацию вот так :) <html> <head> <title>A server error occurred.</title> </head> <h1>Аутентификация пользователя не выполнена.</h1> <hr/> An error occurred processing this request. </html> Из того, что прочитал в других темах на мисте: у пользователя parser полные права, права на использование WS есть. Пользователь обозван латиницей, авторизация идет средствами 1С. Отсюда вопрос, ЧЯДНТ? | |||
| 1
    
        pessok 30.09.15✎ 15:19 | 
        код ВС:
 Функция Upload() ТипВыборка = ФабрикаXDTO.Тип("ПакетДанныхДляПарсера", "Выборка"); ТипРезультат = ФабрикаXDTO.Тип("ПакетДанныхДляПарсера", "Результат"); РезультатВыгрузки = ФабрикаXDTO.Создать(ТипРезультат); Выборка = Справочники.Номенклатура.Выбрать(); Пока Выборка.Следующий() Цикл Данные = ФабрикаXDTO.Создать(ТипВыборка); ЗаполнитьЗначенияСвойств(Данные, Выборка); РезультатВыгрузки.Товар.Добавить(Данные); КонецЦикла; Возврат РезультатВыгрузки; КонецФункции | |||
| 2
    
        pessok 30.09.15✎ 15:21 | 
        сорри, 8.3.5.1119
 УТ 10.3.29.1 | |||
| 3
    
        Serginio1 30.09.15✎ 15:24 | 
        Ты покажи как авторизацию выполняешь     | |||
| 4
    
        pessok 30.09.15✎ 15:26 | 
        (3) да просто в SoapUI ввожу адрес веб-сервиса, жмакаю ОК, он спрашивает логин и пароль. Ввожу: parser, 1. Открывается объект. Если ввести другой пароль, то объект не открывается, вываливает ошибку
 WSDLException (at /html): faultCode=INVALID_WSDL: Expected element '{http://schemas.xmlsoap.org/wsdl/}definitions'. | |||
| 5
    
        Serginio1 30.09.15✎ 15:44 | 
        А зачем SOAPUI если можешь тестировать из 1С, а трафик смотреть Fiddler ом
 Другой пароль это другой пользователь? | |||
| 6
    
        pessok 30.09.15✎ 15:49 | 
        (5) я, откровенно говоря, полный профан в этом вопросе. Как было написано на ИС, так и делал. Другой пароль - это или другой пароль этого пользователя, или другой пользователь (написанный кириллицей)     | |||
| 7
    
        Serginio1 30.09.15✎ 15:54 | 
        А разве у пользователя может быть несколько паролей?     | |||
| 8
    
        pessok 30.09.15✎ 15:58 | 
        (7) блин. я имел ввиду, если ввести заведомо ложный пароль, то авторизация не проходит сразу. Т.е. дело не в том, что пароль введен неверно :)     | |||
| 9
    
        pessok 30.09.15✎ 16:00 | 
        +(8) сейчас попробовал сделать просто из 1С создание WSОпределения под администратором, платформа ругнулась
 {Форма.Форма.Форма(3)}: Ошибка при вызове конструктора (WSОпределения) Определение = Новый WSОпределения("localhost/parser/wsВыгрузкаДляПарсера?wsdl"); по причине: При создании описания сервиса произошла ошибка. localhost/parser/wsВыгрузкаДляПарсера?wsdl При переходе в пофигуратор говорит модально - "Недостаточно прав доступа"... Что-то я совсем ничего не понимаю | |||
| 10
    
        kiruha 30.09.15✎ 16:01 | 
        В Soap в запросе есть закладка свойства запроса.
 Там указать способ авторизации, пользователь и пароль ЧЯДН - не видишь ничего и не смотришь | |||
| 11
    
        kiruha 30.09.15✎ 16:04 | 
        Reqest Propety левый нижний угол     | |||
| 12
    
        Serginio1 30.09.15✎ 16:05 | 
        localhost/parser/ws/ВыгрузкаДляПарсера?wsdl     | |||
| 13
    
        kiruha 30.09.15✎ 16:05 | 
        Request Property     | |||
| 14
    
        pessok 30.09.15✎ 16:08 | 
        (12) да я просто полный путь удалял. Да и переназвал ВС по-английски, на всякий случай
 (13) вот, спасибо, заработало. Век живи, век учись. Мануал молчит, а ничего толкового сам не нашел. | |||
| 15
    
        Serginio1 30.09.15✎ 16:14 | 
        (14) В определении добавь
 Новый WSОпределения("localhost/parser/ws/ВыгрузкаДляПарсера?wsdl",ИмяПользователя,Пароль); | |||
| 16
    
        pessok 30.09.15✎ 16:17 | 
        (15) спасибо! так работает     | |||
| 17
    
        Serginio1 30.09.15✎ 16:19 | 
        Определение=Новый WSОпределения("localhost/parser/ws/ВыгрузкаДляПарсера?wsdl",ИмяПользователя,Пароль);
 WSСервис=Определение.Сервисы[0]; прокси=Новый WSПрокси(Определение, WSСервис.URIПространстваИмен, WSСервис.Имя, WSСервис.ТочкиПодключения[0].Имя); Прокси.Пользователь = ИмяПользователя; Прокси.Пароль = Пароль; рез=Прокси.Upload() | |||
| 18
    
        pessok 30.09.15✎ 16:24 | 
        Спасибо, друзья! 
 Буду теперь расширять свои знания на эту тему. Очень помогли, от души! | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |