|
ДокументацияАдрес нашего сервиса: http://visitexpo.ru/server_expo_new.phpМетод: request_expo_list
Пример на PHPrequire_once(dirname(__FILE__)."/soap/nusoap.php"); // Подключаем NuSOAP // функция для формирования запроса к серверу function call_soap_server($soap_server, $server_method, $input) { // Создаем экземпляр клиента $client_soap = new soap_client($soap_server); // Посмотрите как в вашей библиотеке определен класс: soap_client или soapclient // Проверяем, возникла ли ошибка $err = $client_soap->getError(); if ($err) { // Отображаем ошибку die('Ошибка: '.$err); // Можно вызвать собственный обработчик ошибок } $input['login'] = "_____ВАШ ЛОГИН______"; $input['password'] = "_______ВАШ ПАРОЛЬ_______"; $input['uri'] = $_SERVER['REQUEST_URI']; $input["request"] = $_REQUEST; $result = $client_soap->call( $server_method, // название метода array('input' => $input) ); // Проверяем, возник ли сбой if ($client_soap->fault) { echo 'Сбой: '; print_r($result); exit(); // Можно вызвать собственный обработчик ошибок } // Проверяем, возникла ли ошибка $err = $client_soap->getError(); if($err) { echo "Сервис временно не доступен"; die('Ошибка: '.$err;); // Можно вызвать собственный обработчик ошибок } return $result; } $server = "http://visitexpo.ru/server_expo_new.php"; if (isset($_GET["expo"])) { $action = "request_expo"; $input = array ( 'expo' => $_GET["expo"], "lang" => "rus", "encoding" => "utf-8", ); } else { $action = "request_expo_list"; $input = array ( "lang" => "rus", "page" => isset($_GET["page"]) ? $_GET["page"] : 1, "per_page" => 20, "date_from" => "-5 month", "city" => "Москва, Санкт-петербург", "theme" => "579,636,637,233,170", "sort_by" => "date", "sort_dir" => "DESC", "encoding" => "utf-8", ); } $result_base64 = call_soap_server($server, $action, $input); // обращение к сервису $result = base64_decode($result_base64);Вывод результата: <html> <head> <link href="expo.css" type="text/css" rel="stylesheet" /> </head> <body> <?=$result?> </body> </html>Другие параметры запроса: - lang - язык выдачи(rus,eng), по умолчанию rus - page - страница - per_page - количество выставок на странице - date_from - /необязательно/ минимальная дата проведения выставки (в любом формате) - date_to - /необязательно/ максимальная дата проведения выставки (в любом формате) - city - список городов (русские или английские названия соответственно) через запятую (наличие дополнительных пробелов не существенно) - theme - список идентификаторов тематик (можно посмотреть на visitexpo.ru в поиске) через запятую по которым будут выгружаться выставки - encoding - /необязательно, по умолчанию utf-8/ кодировка данного файла (результат будет отдаваться в этой же кодировке) - sort_by - /необязательно, по умолчанию priority/ сортировка по приоритету (priority), дате проведения (date), названию выставки (name) - sort_dir - /необязательно/ направление сортировки (ASC, DESC)Скачать пример целиком |