Настройка / вход в PHP SOAP APIPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Настройка / вход в PHP SOAP API

Сообщение Anonymous »

До сих пор я работал только с WEB API и не могу понять, как именно работает SOAP. На официальном сайте PHP отсутствует подробная информация, и несколько примеров мне не очень помогли. Я считаю, что если я заставлю работать функцию DoLogin, я смогу справиться со всем остальным, но я упускаю что-то маленькое и не могу понять, что именно. Вот код, который у меня есть на данный момент:

Код: Выделить всё

ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSDL cache
date_default_timezone_set('America/Denver');

$output = array();

$UserName = 'myusername';
$Password = 'mypassword';

$WSDL = 'https://onlineavl2api-us.navmanwireless.com/onlineavl/api/V1.9/service.asmx?WSDL';
$URL = 'https://onlineavl2api-us.navmanwireless.com/onlineavl/api/V1.9/service.asmx';

$client = new SoapClient($WSDL, array('trace' => 1, 'encoding' => 'UTF-8'));
$client->__setLocation($URL);

$GUID = getGUID(); // I have a separate function for creating GUID with PHP i can post if needed

$UserInfo = array(
'request' => array(
'SessionID' => null,
'UserCredential' => array(
'UserName' => $UserName,
'Password' => $Password,
'ApplicationID' => $GUID,
'ClientID' => $GUID,
'ClientVersion' => '1.2'
),
'IPAddress' => $_SERVER['SERVER_ADDR'],
'ClockVerificationUtc' => time()
));

try{
$SessionID = $client->DoLogin($UserInfo);
$AllFunctions = $client->__getFunctions();
$GetTypes = $client->__getTypes();
$LastRequest = $client->__getLastRequest();
$LastResponse = $client->__getLastResponse();
// $SessionID = $client->DoLogin($UserInfo);
}

catch(Exception $e) {
$output['errors'] = $e->getMessage();
}

$output['Types'] = $GetTypes;
$output['Functions'] = $AllFunctions;
$output['result'] = $result;
$output['LastRequest'] = $LastRequest;
$output['LastResponse'] = $LastResponse;
$output['SessionInfo'] = $SessionInfo;

print json_encode($output);
Ответом этого кода является следующая ошибка:

Код: Выделить всё

Server was unable to process request. ---> A service call threw a security fault exception - Security.Fault: SessionIDNotFound ---> Security.Fault: SessionIDNotFound
Вот ссылка на документацию по опубликованному интерфейсу функции DoLogin: https://onlineavl2api-us.navmanwireless ... avl/api/V1 .9/service.asmx?op=DoLogin

Подробнее здесь: https://stackoverflow.com/questions/446 ... etup-login
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»