xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Доступ к XML-RPC функциям только при наличии API Key

Опубликовано в

В ядре друпала нет механизма ограничения доступа к XML-RPC функциям. Все советуют использовать модули Services + Services API Key Authentication, но можно поступить проще:

define('MODULENAME_API_KEY', '...');
 
// Код для сервера
/**
 * Implements hook_xmlrpc().
 */
function modulename_xmlrpc() {
  if (isset($_GET['key']) && $_GET['key'] == MODULENAME_API_KEY) {
    return array(
      'modulename.functionName' => 'modulename_functionname',
    );
  }
}
 
// Код для клиента
$result = xmlrpc('http://example.com/xmlrpc.php?key=' . MODULENAME_API_KEY, array(
  'modulename.functionName' => array(),
));
Написанное актуально для Drupal 7
Похожие записи

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании