К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Ошибка при обращении к web сервису 1с извне

Гость
0 - 21.05.2018 - 18:21
Добрый день.
Подскажите ошибку или куда покопать можно.
Документацию перечитал, интернет излазил.
Хоть стреляться, не понимаю в чём прикол.

Запилил в 1С(8.3.12.1412) вэб сервис, конфигурация самописная.

ВС вызываю для теста сервисом http://phptester.net
Код:
<?php
$wsdl_url ='http://*.*.*.*/1cws/ws/*.1cws?wsdl';
$login = '***';
$pass = '***';
try **  
     $client = new SoapClient($wsdl_url, array('login'=>$login, 'password'=>$pass));
 ** catch (SoapFault $e) **  
    echo $e; 
 **

foreach($client->__getFunctions() as $V)**
	var_dump($V);echo '<br>';
**

$parameters = array('StartDate1'=>'2018-04-01', 'FinishDate'=>'2018-04-20');
$res = $client->GetLessons($parameters);
var_dump($res);
Если параметров у Операции(Метода) нет в 1С и не переданно при вызове, всё работает хорошо.
Если параметры у Операции прописаны, но внешний ресурс вызывает с неправильным количеством параметров получаю ошибку "неверное количество параметров"
Если параметры у операции заданы и ВС вызывается с правильным количеством параметров имею ошибку:
"FATAL ERROR Uncaught SoapFault exception: [soap:Client] Unknown error. Insufficient number of operation parameters reason: Insufficient number of operation parameters"

Cобствено в ступор ставит последнее. Параметров нужное количество, параметры в правильном значении, а ошибка не идентифицирует проблему.
Ошибка утверждает что "Недостаточное количество параметров операции", но параметров ровно столько сколько определено в 1с.



Гость
1 - 21.05.2018 - 18:34
извиняюсь.
при публикации кода, почему-то фигурные скобки заменились на '**'

Отредактировано Hedin; 21.05.2018 в 18:36. Причина: автозамена символов
Гость
2 - 21.05.2018 - 19:21
пропробуй потестить SoapUI by SmartBear, неплохой инструмент для проверки веб-сервисов
Гость
3 - 21.05.2018 - 19:31
2-Jimbo > SoapUI тестил, позамороченне, но смысл тотже, результат тотже, там ошибку какуюто другую пишет, но тоже не отражающую реальность.
ВС работает если у функции нет параметров, всё падает когда добавляются параметры.
При прямом обращее к файлу публикации структуру ВС я вижу.
В примере кода выше, есть кусок выводящий список доступных функций, функции видны и если есть параметры и если их нет!
Гость
4 - 21.05.2018 - 19:35
у веб-сервиса должны быть жестко прописаны входящие и выходящие параметры. Если их нет, то как раз не взлетит.
Гость
5 - 21.05.2018 - 19:55
4-Jimbo > в том то и дело что без параметров работало, с параметрами нет.
Но Решилось!
Спасибо за участие.
х.з. чё было, почистил весь кэш что нашёл, рестартанул Апач, с 0ля еще раз пересоздал сервис.
Работает.
Надеюсь второй раз сервак так не глюканёт, 4 часа убил ((.

Отредактировано Hedin; 21.05.2018 в 19:56. Причина: опечатка


К списку вопросов






Copyright ©, Все права защищены