Php Codeigniter API会话
我正在为IOS应用程序编写api 我对IOS应用程序的会话处理有些担心 当用户从iphone登录时,我需要将会话id作为登录响应传递并使用该会话id 在验证用户的进一步api调用中 我在api控制器中所做的是获取会话id并将其与用户详细信息一起保存到会话数组中,然后将会话id作为响应传递Php Codeigniter API会话,php,codeigniter,api,session,Php,Codeigniter,Api,Session,我正在为IOS应用程序编写api 我对IOS应用程序的会话处理有些担心 当用户从iphone登录时,我需要将会话id作为登录响应传递并使用该会话id 在验证用户的进一步api调用中 我在api控制器中所做的是获取会话id并将其与用户详细信息一起保存到会话数组中,然后将会话id作为响应传递 $session = $this->session->userdata('session_id'); $user_array = array( 'email' =&g
$session = $this->session->userdata('session_id');
$user_array = array(
'email' => $user->email,
'session_id'=>$session
);
$this->session->set_userdata('logged_in', $user_array);
$output = array(
'code'=>200,
'user'=>$user,
'session_id'=>$session
);
$this->output
->set_content_type('application/json')
->set_output(json_encode($output));
对于进一步的api调用,我将获取session_id作为参数
我检查了它是否是有效的部分,或者没有使用以下内容。代码
$session_id = $this->input->get('session_id', TRUE);
if($session_id){
if($this->session->userdata('logged_in')){
$user = $this->session->userdata('logged_in');
if($user['session_id'] == $session_id){
// valid session
}
当与邮递员一起测试时,该方法效果良好
但我不确定,这是处理API调用会话的正确方法
当从IOS应用程序运行时,同样的功能会起作用吗
提前感谢您使用的是无状态的REST api方法,因此从IOS应用程序调用时不会维护会话。您从应用程序拨打的每个电话都将有一个新会话 如果在调用API时确实需要维护会话,则必须将SOAP用作web服务 有关更多信息,请查看