Есть сервер wcf, и я пытаюсь подключить его и отправить запросы.
Код является:
$url = "http://serverip:8080/example.svc?wsdl";
$params = array(
'Username' => 'username',
'Password' => 'password'
);
$client = new SoapClient($url);
var_dump($client->__getTypes()); //it works
$result = $client->Login($params); //gives error
Но каждый раз я получаю внутреннюю ошибку сервера. Я провожу 5 дней, обыскиваю всю сеть и пробую разные методы, но всегда получаю внутреннюю ошибку сервера. Ошибка ниже:
protected 'message' => string 'The server was unable to process ...
private 'string' (Exception) => string '' (length=0) ...
Если я использую SOAP UI, я могу отправлять и получать данные или, если я вызываю «$ client -> __ getTypes ()» с php-сервера, я получаю типы. Но если я вызываю реализованные функции с помощью PHP, это не работает. Есть ли кто-нибудь, чтобы помочь мне?
Большое спасибо,
Возможно, вы должны передать параметры как объект, как в следующем примере
try {
$client = new SoapClient('http://serverip:8080/example.svc?wsdl');
$params = new stdClass();
$params->Username = 'Username';
$params->Password = 'Password';
$client->Login($params);
} catch (SoapFault $e) {
// error handling
}
Других решений пока нет …