检查用户是否已登录其他域

时间:2012-11-16 07:39:54

标签: php session curl symfony-1.4 sessionid

我在我的网站上使用远程登录功能从我的网站登录到onapp服务器..这实际上将使用CURL获取表单并使用用户名和密码提交。它工作正常。现在我的网站为单个用户提供了不同的服务,因此onapp服务器上有多个帐户。所以我需要一种方法来检查onapp服务器上是否存在会话(如果用户已经登录)。如果用户已经登录onapp,将不允许其他登录,并且将显示已经有用户登录。因此需要注销用户并使用新凭据登录。知道如何做到这一点。 ?

1 个答案:

答案 0 :(得分:0)

这个我觉得它可以帮到你

// REST Server URL
$request_url = 'http://localhost:3000/rest_api/user/login';

// User data 
$user_data = array('username' => 'jimthunderbird',    
  'password' => '123456', );

// cURL 
$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $request_url); 
curl_setopt($curl, CURLOPT_POST, 1); 
// Do a regular HTTP POST 
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($user_data)); // Set POST data
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);

$response = curl_exec($curl);

print $response;

$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); 
// Check if login was successful 
if ($http_code == 200) {   
     // Convert json response as array   
     $logged_user = json_decode($response); 
} else { 
    // Get error msg   
    $http_message = curl_error($curl);  
    die($http_message); 
}

print_r($logged_user);