Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2017, 21:09   #1
romantiqueamour
Пользователь
 
Регистрация: 18.11.2016
Сообщений: 26
По умолчанию SoapClient обращение к серверу

Здравствуйте. Во время написания Клиента и Сервера (для изучения) выпадает вот такая ошибка
Fatal error: Uncaught SoapFault exception: [HTTP] Could not connect to host in C:\OpenServer\domains\try.net\soap\ client.php:5 Stack trace: #0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://http://t...', '', 1, 0) #1 C:\OpenServer\domains\try.net\soap\ client.php(5): SoapClient->__call('getStock', Array) #2 C:\OpenServer\domains\try.net\soap\ client.php(5): SoapClient->getStock('c') #3 {main} thrown in C:\OpenServer\domains\try.net\soap\ client.php on line 5

Создал вот такой сервер:
Код:
<?
    function getStock($id){
        $stock = [
                    "a"=>100,
                    "b"=>200,
                    "c"=>300,
                    "d"=>400,
                    "e"=>500,
                ];
        if(isset($stock[$id])){
            $quantity = $stock[$id];
            return $quantity;
        }else{
            return 0;
            //throw new SoapFault("Server", "Несуществующий id товара");
        }
    }
    //Отключение кэширования WSDL-документа
    ini_set("soap.wsdl_cache_enabled", "0");
    $server = new SoapServer("http://try.net/soap/stock.wsdl");
    //Добавить класс к серверу    
    $server->addFunction('getStock');//функции, которые будут работать
    //Запуск сервера
    $server->handle();
?>
Такой клиент:
Код:
   $client = new SoapClient("http://try.net/soap/stock.wsdl");
        
        $result = $client->getStock("c");
        echo "Текущий запас на складе: ", $result;
Что касается wsdl файла, то его содержимое следующее:
Код:
<?xml version = "1.0" encoding = 'UTF-8' ?>
<definitions name='Stock'
            targetNamespace='http://try.net/soap'
            xmlns:tns='http://try.net/soap '
            xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
            xmlns:xsd='http://www.w3.org/2001/XMLSchema'
            xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/'
            xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
            xmlns='http://schemas.xmlsoap.org/wsdl/'>
             
   <message name='getStockRequest'>
        <part name='shelf_name' type='xsd:string'/>
    </message>
    <message name='getStockResponse'>
        <part name='quantity' type='xsd:integer'/>
    </message>
    
    <portType name='StockPortType'>
        <operation name='getStock'>
            <input message='tns:getStockRequest'/>
            <output message='tns:getStockResponse'/>
        </operation>
    </portType>
    
    <binding name='StockBinding' type='tns:StockPortType'>
        <soap:binding style='rpc' transport='http://schemas.xmlsoap.org/soap/http'/>
            <operation name='getStock'/>
    </binding>
    
    <service name='StockService'>
        <port name='StockPort' binding='StockBinding'>
            <soap:address location='http://try.net/soap/server.php'/>
        </port>
    </service>
</definitions>
На сколько мне хватает мозгов, он мне выдал не одну ошибку и речь идёт о том, что он не может подключиться, хотя сервер у меня запущен... Порылся в интернете - ничего дельного... Буду очень благодарен за любую подсказку!
romantiqueamour вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подключение к серверу Nibelyng Работа с сетью в Delphi 5 11.05.2015 22:46
Всего одно обращение к серверу. Predator199 JavaScript, Ajax 17 12.03.2014 10:04
Обращение как к функции или обращение после опрд действия Gefo JavaScript, Ajax 5 04.02.2013 08:55
Обращение к DNS - серверу Mid1987 C/C++ Сетевое программирование 17 13.04.2012 19:55
Запросы к серверу xPAL Работа с сетью в Delphi 2 14.10.2008 19:39