Ich baue eine API mit CodeIgniter und die RestServer Implementierung von https://github.com/chriskacerguis/codeigniter-restserverCodeigniter RESTServer Sitzung
ich die 'Sitzung' Authentifizierungsmodus verwenden möchten, so dass ich dies in config/rest.php:
$config['rest_auth'] = 'session';
$config['auth_source'] = 'userdata';
in config/config.php:
$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
ich habe einen Controller Auth, die den folgenden Code haben:
012.class Auth extends My_Controller
{
public function __Construct(){
parent::__construct();
}
public function index(){
$user = array(
"id" => "1",
"first_name" => "First",
"insertion" => "",
"last_name" => "Last"
);
$this->session->userdata = $user;
pr($this->session->userdata);
}
}
Die Sitzung wird in der Datenbank gespeichert und enthält die Daten von $ user. pr echos die Daten (pr ist in hooks definiert, und tut print_r ($ data))
Aber .. wenn ich einen Controller ausführen, die REST_Controller erweitert bekomme ich immer ein {"status": false, "error" : "Nicht autorisiert"} Fehler.
Ich habe viel gesucht, aber ich kann keine Lösung dafür finden (oder niemand die 'Session' Auth-Methode verwenden?), Aber vielleicht kennt jemand hier die Lösung?
Danke!
EDIT: Der Controller für eine meiner API-Funktionen:
class Club extends REST_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('Club_model');
}
public function index_get(){
if(!$this->get('id')){
$clubs = $this->Club_model->get_all_clubs();
}else{
$clubs = $this->Club_model->get_club($this->get('id'));
}
if($clubs){
$this->response($clubs, 200);
}else{
$this->response(null, 404);
}
}
EDIT 2: autoload.php ich hinzugefügt haben 'Sitzung' in config/autoload.php
$autoload['libraries'] = array('database','session');
Hmm es sieht aus, das funktioniert. Ich frage mich, wie sicher das ist? – NVO