Не удается зарегистрировать пользователя в службах drupal (служба Response 500 с ошибкой недоступна)
С помощью,
Drupal 7.x,
Услуги 3.x.
Все работает,
Авторизоваться
Получение всех узлов
выйти
Получение токенов и т. Д.
Только при регистрации нового пользователя я получаю услугу reponse 500, недоступную!
Попытка это так,
POST метод для
xyz.com/rest/user/register
где отдых это конечная точка!
Размещение данных для регистрации, как это,
{
"name":"user343",
"pass":"kes35@r4",
"mail":"user343@sample.com",
"status":"1"
}
1 ответ
Ваша ошибка вызвана ошибочным вызовом валидации в сервисном модуле drupal. Это трудно выследить. Попробуйте быстрое исправление в файле services/resources/user_resource.inc для исправления.
diff --git a/resources/user_resource.inc b/resources/user_resource.inc
index 04801fb..7693f2d 100644
--- a/resources/user_resource.inc
+++ b/resources/user_resource.inc
@@ -335,14 +335,6 @@ function _user_resource_create($account) {
// Execute the register form.
$form_state['programmed_bypass_access_check'] = FALSE;
- // Ensure this is validated, as drupal_form_submit will not call validation.
- user_register_validate('user_register_form', $form_state);
- $errors = form_get_errors();
- // If there are errors, then short circuit and return early.
- if ($errors) {
- return services_error(implode(' ', $errors), 406, array('form_errors' => $errors));
- }
-
drupal_form_submit('user_register_form', $form_state);
// find and store the new user into the form_state
if(isset($form_state['values']['uid'])) {
Если вас не устраивает стандартный патч, вы можете просто закомментировать эти строки, чтобы быстро применить ручное исправление. Информация получена с этой страницы. Продолжайте наслаждаться Drupal!