SoapClient для nusoap, сервер не распознал значение HTTP-заголовка SOAPActionPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 SoapClient для nusoap, сервер не распознал значение HTTP-заголовка SOAPAction

Сообщение Anonymous »

Мы используем PHP 5.3.18, по каким-то странным причинам я не могу установить php-soap, поэтому я не могу использовать класс SoapClient...Сейчас я использую последний nusoap (должен быть совместим с php 5.3.18) и транслирую код из SoapClient в nusoap_client.
Этот код используется SoapClient и отлично работает

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

$s_WSPROTOCOL = 'https';
$s_WSHOSTNAME = 'xxxxxxxx.yyyyyy.tdl';
$s_WSPORT = '';
$s_WSPATHNAME = 'webservices/service.asp?WSDL';
$s_WSTIPOOP = 'MyFunction';

$parameters['Username'] = '999';
$parameters['Login'] = 'Master';
$parameters['Password'] = 'universe';
$parameters['IdServ'] = '5';
$parameters['IdCard'] = '555';
$parameters['Controllo'] = '';

echo $s_WSTIPOOP."
";
echo $s_WSPROTOCOL."://".$s_WSHOSTNAME.$s_WSPORT."/".$s_WSPATHNAME."

";

try
{
$SOAP = new SoapClient($s_WSPROTOCOL."://".$s_WSHOSTNAME.$s_WSPORT."/".$s_WSPATHNAME, array('trace' => 1));
$result = $SOAP->__soapCall($s_WSTIPOOP, array("parameters" => $parameters), null);
foreach ($result as $key => $value)
{
echo "".$key."[/b][b]";
print_r($value);
echo "
";
}

}
catch (SoapFault $e)
{
echo "".$e->faultstring."[/b]";
}
Этот код в nusoap возвращает

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

[faultcode] => soap:Client
[faultstring] => Server did not recognize the value of HTTP Header SOAPAction: .
[detail] =>
вот код

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

require("nusoap/lib/nusoap.php");

error_reporting(E_ALL ^ E_NOTICE);
$ERROR_MSG = '';

$s_WSPROTOCOL = 'https';
$s_WSHOSTNAME = 'xxxxxxxx.yyyyyy.tdl';
$s_WSPORT = '';
$s_WSPATHNAME = 'webservices/service.asp?WSDL';
$s_WSTIPOOP = 'MyFunction';

$parameters['Username'] = '999';
$parameters['Login'] = 'Master';
$parameters['Password'] = 'universe';
$parameters['IdServ'] = '5';
$parameters['IdCard'] = '555';
$parameters['Controllo'] = '';

echo $s_WSTIPOOP."
";
echo $s_WSPROTOCOL."://".$s_WSHOSTNAME.$s_WSPORT."/".$s_WSPATHNAME."

";
$client = new nusoap_client($s_WSPROTOCOL."://".$s_WSHOSTNAME.$s_WSPORT."/".$s_WSPATHNAME);

$result = $client->call($s_WSTIPOOP, $parameters, '');

if ($client->fault) {
echo 'Fault (Expect - The request contains an invalid SOAP body)'; print_r($result); echo '';
} else {
$err = $client->getError();
if ($err) {
echo 'Error' . $err . '';
} else {
echo 'Result'; print_r($result); echo '';
}
}
где ошибка? Я читаю код из источника nusoap, безуспешно пытаюсь использовать разные аргументы


Подробнее здесь: https://stackoverflow.com/questions/175 ... r-soapacti
Ответить

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

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

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

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

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