Модуль Web Service Clients реализует интерфейс, который позволяет создавать, изменять и тестировать соединение с удалённым сайтом. Параметры соединения могут быть экспортированы с помощью Chaos tool suite и таким образом добавлены с помощью Features. Основным назначением модуля является получение содержания с другого сайта на Друпале, установленного через модуль Services.
Модуль позволяет вызывать методы на удалённом сайте очень просто, без необходимости иметь дело с токенами, ключами и другими подобными вещами. После того, как соединение определено в интерфейсе управления модулем, вы можете вызвать удалённый метод подобным образом:
try {
// 'my_connection' is the machine name of the connection.
$result = clients_connection_call('my_connection', 'method.name', $param1, $param2, $param_etc);
}
catch (Exception $e) {
// Something went wrong; it's up to you to display an error.
// This is the error message, if any:
$message = $e->getMessage();
}
Например, чтобы загрузить документ с удалённого сайта, сделайте следующее:
try {
$node = clients_connection_call('my_connection', 'node.get', $remote_nid);
// Note that the $node will be an array.
}
catch (Exception $e) {
drupal_set_message("Error loading a remote node.");
}
Если нужно сделать несколько вызовов, то можно использовать объект соединения самостоятельно:
$connection = clients_connection_load('my_connection');
try {
$result = $connection->callMethod('method.name', $param1, $param2, $param_etc);
}
catch (Exception $e) {
drupal_set_message("Error calling method.name.");
}
Для определения своего типа соединения, нужно: