【发布时间】:2015-04-07 10:24:10
【问题描述】:
我们正在为 Drupal 7 站点实施 Web 服务(Web 服务代码不是 drupal 安装文件夹的一部分)。
其中一项网络服务需要在网站上注册用户。 主要障碍是获得 Drupal 也能识别的散列密码。
为此,我遵循关于堆栈溢出的建议,以在 drupal 内实现 REST 服务并从外部服务代码调用该服务。 (这部分似乎也是可能和可实现的)。
已经使用以下代码实现了密码哈希服务:
function GetHashedPassword($string)
{
require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');
$hashedpw = user_hash_password($string);
$data = array(
'password' => $hashedpw
);
header("Access-Control-Allow-Origin: *");
drupal_json_output($data);
drupal_exit();
}
现在的主要问题是,即使使用相同的字符串调用此服务,每次都会返回一个新的哈希值..
如果我们需要的东西实际上是可能的,请提供帮助,如果是的话,那么上面的代码可以修复什么
任何帮助表示赞赏
【问题讨论】:
-
您是要在 Drupal 中还是在外部系统中创建用户?我之前的建议实际上是让您的外部服务触发 Drupal 中的自定义模块来创建用户,并将 id 或完整的用户 json 返回到您的外部脚本。也许您可以详细说明您要达到的目标。
-
是的,这就是我们所做的。使用 hook_menu 在 drupal 中实现了一个 REST 服务并在外部代码中调用它