我正在尝试使用ajax codeigniter 3创建REST API,但是当我从客户端发出请求时,不会保留会话变量。 并需要文件会话“$ config ['sess_driver'] ='files';” 我尝试了许多资源甚至扩展了会话类并且没有工作,也改变了参数config“sess_driver”,“sess_expiration”,“sess_expiration”,“sess_save_path”,“sess_time_to_update”而不是,可以使用哪些替代方案要保留的Ajax和会话
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_save_path'] = BASEPATH . "/session_data";
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
$config['sess_expiration'] = 0;//try with 0 and 7200 http://stackoverflow.com/questions/23008452/codeigniter-session-not-working-with-ajax?rq=1
我的控制器登录
$is_logged_in = $this->session->userdata('is_logged_in');
if(isset($is_logged_in) || $is_logged_in == true){
echo "the session is ready";
else{
echo "the session is loading";
$this->session->set_userdata('is_logged_in', $output['token']);
}
始终显示“会话正在加载”
和我的客户
$http.get( $rootScope.$APIURL + "users/login", null)
.success(function(data) {
defered.resolve(data);
}).error(function(err) {
defered.reject(err)
});
return defered.promise;
然后我在autoload.php中加载会话库
$autoload['libraries'] = array('database', 'form_validation','session');
非常感谢你为我所做的一切而不是使用替代品的答案