我正在试图弄清楚如何为Drupal 7实例的用户创建一个RESTful API来CRUD。最好使用以下模块,因为站点的其他部分使用它: https://github.com/RESTful-Drupal/restful 如果那里有一个更好的休息模块,我愿意给它一个机会。
文档显示了如何将其与文章一起使用。我需要更改为用户?是否有我可以关注的教程?
答案 0 :(得分:1)
如果您在模块中创建自己的终点,只是为了注册用户,您将获得更多的快乐,并且会更安全。
首先,在模块的.module文件中,使用hook_menu函数
/*
* hook_menu
*/
function yourmodule_menu() {
$items['yourmodule/user/register'] = array(
'page callback' => 'yourmodule_user_register',
'access arguments' => array('access content'),
);
return $items;
}
然后创建回调函数:
/*
* hook_menu page callback
*/
function yourmodule_user_register() {
// if you want to send the payload using content type 'application/json'
$json = file_get_contents('php://input');
$obj = json_decode($json);
// otherwise use $_POST
// if you have autoloader set up
$register = new YourmoduleUserRegister($obj);
// otherwise add in your logic here to validate and save user data
}
使用drupal API方法user_load_by_mail()和user_load_by_name()验证用户数据后,使用user_save()注册用户。您也可以将原始网址列入白名单,并在此处执行其他安全措施。