получение исключения Uncaught SoapFault при использовании мыльного клиента - PullRequest
0 голосов
/ 27 августа 2010

PHP версия: 5.3.3

Я использую расширение SOAP для извлечения данных из веб-API.Ниже вы можете увидеть мои детали подключения.Когда он попадает в строку 3, я получаю сообщение об ошибке:

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://www.global1.autotask.net/atservices/1.2/atws.wsdl' : failed to load external entity "https://www.global1.autotask.net/atservices/1.2/atws.wsdl" in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php:5 Stack trace: #0 C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php(5): SoapClient->SoapClient('https://www.glo...', Array) #1 {main} thrown in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ATAPI\index.php on line 5

Вот мои данные соединения:

$wsdl = 'https://www.global1.autotask.net/atservices/1.2/atws.wsdl';
$loginarray = array('login' => "billy.jones@networkroi.co.uk", 'password' => "******", 'uri'=>"http://autotask.net/ATWS/v1_2/", 'location'=>"https://global1.autotask.net/atservices/1.2/atws.asmx");
$client = new SoapClient($wsdl, $loginarray);

Я погуглил и вижу, что это возможно ошибка с расширением soap?

Я оставил комментарий:

extension=php_soap.dll

В файле php.ini.и я также позаботился о том, чтобы мой параметр allow url fopen был включен:

allow_url_fopen = On

Кто-нибудь понял, как мне обойти эту проблему?Может быть, я забыл что-то сделать?

Спасибо,

Билли

Ответы [ 3 ]

1 голос
/ 08 сентября 2010

Во-первых, я бы порекомендовал вам опубликовать вопрос на веб-сайте Autotask CommunITy (community.autotask.com), так как там много ресурсов, которые очень хорошо знакомы с особенностями Autotask.

Используемый вами URL-адрес неверен для доступа к веб-сервисам. Если вы используете https://webservicesg1.autotask.net/atservices/1.2/atws.wsdl это работает?

Travis

0 голосов
/ 27 августа 2010

Почему вы считаете, что где-то сидит файл с расширением .wsdl? Чтобы получить WSDL из веб-службы ASMX, добавьте «? Wsdl» в конец службы, например https://global1.autotask.net/atservices/1.2/atws.asmx?wsdl.

0 голосов
/ 27 августа 2010

1) у меня работает нормально. Я могу загрузить это и даже не нуждаться в пароле. Ну, проблема возникает в некоторых версиях PHP / Soapclient. Советую обновить PHP до последней версии.

2) Если он все еще не работает, попробуйте NuSoap . Это тоже довольно круто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...