2015-06-09 9 views
0

Я пытаюсь написать PHP-скрипт для добавления новых пользователей в Drupal 7 с помощью сервисного модуля.Зарегистрировать нового пользователя как аутентифицированного пользователя в drupal с помощью xml-rpc

До сих пор мне удалось создать один, но как анонимный пользователь. Когда я запускаю сценарий с правами администратора только, я получаю Уведомление:

Доступ запрещен для пользователя анонимным (403), хотя я посылаю имя пользователя и пароль в запросе.

Любые идеи, что я должен делать?

Заранее спасибо.

ответ

1

Вы не можете использовать ресурс службы регистра пользователей при входе в систему как любой тип аутентифицированного пользователя. Это очень похоже на поведение Drupal по умолчанию, когда вы вошли в систему, вы не можете заполнить регистрационную форму. Вместо этого вам нужно вызвать ресурс службы создания пользователя.

Делают POST к ?q=[my-endpoint]/user.json и отправить по данным похожее на следующее:

{ account: { name: 'bob', mail: '[email protected]', } }

+0

Привет, спасибо за ваш ответ. Я попытался с user.create, но я все равно получаю ту же ошибку. Сначала я вхожу в систему с пользователем user.login, чем получаю X-CSRF-TOKEN и SESSION и устанавливаю эти параметры заголовка в вызове user.create ... но он не работает. У вас есть идея? Спасибо! – Vesna

+0

Пользователю, которому требуется зарегистрированный пользователь, потребуется разрешение администратора администрирования для создания пользователя (http://cgit.drupalcode.org/services/tree/resources/user_resource.inc?h=7.x-3.x # n806). Если это все еще не работает, просмотрите журналы сторожевого таймера Drupal, чтобы узнать, есть ли у него какой-либо намек относительно того, почему он не работает. –