Я должен использовать веб-сервис, программист, который его создал, дал мне конечную точку, а также ссылку на wsdl.
Как мне создать клиента? Используя ссылку wsdl или конечную точку?
Когда я пытаюсь подключиться, у меня есть следующее возвращение
"Предупреждение: SoapClient :: SoapClient (http://mv114.agraria.coop.br:50000/XISOAPAdapter/MessageServlet?channel=:BC_SOAP_CV:CC_SOAP_CV_Sender) [function.SoapClient-SoapClient]: не удалось открыть поток: запрос HTTP HTTP / 1.1 401 Не авторизован в /srv/www/htdocs/wwwintranet/nusoap_ex/sap_xml.php в строке 6 Предупреждение: SoapClient :: SoapClient () [function.SoapClient-SoapClient]: предупреждение ввода-вывода: не удалось загрузить внешнюю сущность "http://mv114.agraria.coop.br:50000/XISOAPAdapter/MessageServlet?channel=:BC_SOAP_CV: CC_SOAP_CV_Sender "в /srv/www/htdocs/wwwintranet/nusoap_ex/sap_xml.php в строке 6 Неустранимая ошибка: необработанное исключение SoapFault: [WSDL] SOAP-ERROR: синтаксический анализ WSDL: не удалось загрузить файл из http://mv114.agraria.coop.br:50000/XISOAPAdapter/MessageServlet?channel=:BC_SOAP_CV:CC_SOAP_CV_CC_SOAP_CV_Sender in srv / www / htdocs / wwwintranet / nusoap_ex / sap_xml.php: 6 Трассировка стека: # 0 /srv/www/htdocs/wwwintranet/nusoap_ex/sap_xml.php(6): SoapClient-> SoapClient ('http: // mv) ag ... ') # 1 {main} добавлено в /srv/www/htdocs/wwwintranet/nusoap_ex/sap_xml.php в строке 6 "
Код:
require_once('nusoap.php');
$client = new SoapClient('http://mv114.agraria.coop.br:50000/XISOAPAdapter/MessageServlet?channel=:BC_SOAP_CV:CC_SOAP_CV_Sender');
//$client = new SoapClient('http: //mv114.agraria.coop.br:50000/dir/wsdl?p=ic/55b6a9155f353207b6e7c92f548bbb98');
$client->setHTTPProxy("http: //wmv114.agraria.coop.br",50000,"WSPO","WAgr9876");
$err = $client->getError();
if ($err){
echo "Error". $err.;
}
else
{
echo "OK!!";
}
Первые параметры в new SoapClient
ожидает WSDL, а не WSDL.
Либо измените его на WSDL, либо укажите в расположении / uri второй параметр:
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
Других решений пока нет …