我正在尝试使用 ajax 设置登录系统。
用户在 subdomain.domain.com(也可能是 otherdomain.com)中插入他的登录名和密码后,我向 rest.domain.com 发出 Jquery $.post 请求,并且用户正确登录。
然后,如果我向 rest.domain.com 发出另一个请求以检查用户是否已登录(或进行其他需要用户登录的操作),则会话为空。
我究竟做错了什么?
编辑
客户端应用
$.post('http://rest.domain.com/user/login',form,function(data){
//Do what is needed
});
RESTful 应用程序(使用 Slim 和 uFlex)
header('Access-Control-Allow-Origin: *');
session_start();
//User
//Check if logged
$app->get('/user/logged', function () use ($user, $app){
print_r($_SESSION);
echo $user->signed;
});
//Login
$app->post('/user/login', function () use ($user, $app) {
$username = isset($_POST['email']) ? $_POST['email'] : false;
$password = isset($_POST['password']) ? $_POST['password'] : false;
$auto = isset($_POST['auto']) ? $_POST['auto'] : false;
$user->login($username,$password,$auto);
if($user->signed){
print_r($_SESSION);
}else{
//Display Errors
foreach($user->error() as $err){
echo "<b>Error:</b> {$err} <br/ >";
}
}
});