1

我是 drupal 和 node.js 的新手。我正在将 drupal 与 node.js 服务器连接起来。我想做的是从 node.js 服务器响应中获取 cookie,我需要将这些 cookie 设置为对 node.js 服务器的下一个请求

function sample_submit($form, &$form_state) {
  $request_url = "http://localhost/api/authenticate";  //Link to Node.Js server
  $sig =  hash_hmac('sha512', 'secret', 'secret');//hashed the api key using sha512 algoritham
  $options = array(
                'method' => 'POST',
                'data' =>  'apikey='.$sig,//api key for authenticaton between nodejs and drupal application
                'timeout' => 15,
                'headers' => array('Content-Type'=> 'application/x-www-form-urlencoded')
        );
    $result = drupal_http_request($request_url, $options);     
}

我正在使用 node.js 服务器的 api 密钥对请求进行身份验证。node.js 服务器在 passportjs 模块的帮助下创建会话 cookie。我想从 node.js 服务器获取 cookie 并将 cookie 与下一个请求一起传递。那就是我想从上面的函数中获取 cookie,然后将 cookie 与下面的函数中的请求一起发送,以便只有 node.js 服务器可以使用 drupal 应用程序进行身份验证。

function sample_submit1($form, &$form_state) { 
  $request_url = "http://localhost/login";  //Link to Node.Js server
  $options = array(
                'method' => 'GET',
                'timeout' => 15,
                'headers' => array('Content-Type'=> 'application/x-www-form-urlencoded')
        );
    $result = drupal_http_request($request_url, $options);
    drupal_set_message(t($result->data));

有什么方法或更好的方法可以做到这一点吗?对此的任何见解将不胜感激。谢谢你。

4

0 回答 0