|
|
ДокументацияАдрес нашего сервиса: http://visitexpo.ru/server_expo_new.phpМетод: request_expo_list
Пример на PHP
require_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)Скачать пример целиком |