Ошибка при запуске примера кода веб-службы от weather.gov - PullRequest
0 голосов
/ 22 февраля 2011

Я пытаюсь интегрировать данные о погоде из NOAA на моем веб-сайте, и в качестве отправной точки я пытался запустить их пример кода (доступно здесь . Конкретный образец, который я пытаюсь использовать работа с примером базового клиента (отправная точка ndfdXML.htm).

Я следовал инструкциям readme для загрузки nuSOAP и изменения местоположения на локальные пути, а также изменения местоположения soapclient на www.weather.gov вместо localhost, но я все еще получаю сообщение об ошибке, когда я фактически отправляю страницу .

Ошибка появляется только когда я делаю view-source, и это то, что он говорит:

Fatal error:  Uncaught SoapFault exception: 
[WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.weather.gov/forecasts/xml/SOAP_server/ndfdXMLserver.php': 
Extra content at the end of the document  in /opt/lampp/htdocs/weather/ndfdXMLclient.php:179

Stack trace:
#0 /opt/lampp/htdocs/weather/ndfdXMLclient.php(179): SoapClient->SoapClient('http://www.weat...')
#1 {main}   thrown in /opt/lampp/htdocs/weather/ndfdXMLclient.php on line 179

Есть идеи, что это значит? Мне не удалось найти какую-либо помощь, предлагаемую фактической службой погоды.

1 Ответ

0 голосов
/ 22 февраля 2011

Могу поспорить, вам нужно указать фактический путь к wsdl в вашем коде SoapClient.

http://www.weather.gov/forecasts/xml/SOAP_server/ndfdXMLserver.php?wsdl

(обратите внимание на "? Wsdl" в конце)

Похоже, ваш код пытается создать SoapClient, используя http://www.weather.gov/forecasts/xml/SOAP_server/ndfdXMLserver.php в качестве пути для wsdl. Если вы действительно пойдете туда, вы увидите, что это не wsdl. На самом деле он находится на первом URL в этом посте

...