我正在Codeigniter中创建API。在这个API中,我为用户提供了一个登录函数。如果登录成功,我将在CI会话中设置用户数据,并将会话返回给用户。
现在,用户可以使用该会话ID来验证他自己的所有其他请求,如添加/更新/删除。基本上,我希望当用户发送下一个请求时,我可以根据他的会话ID验证他的凭据。
客户请求代码:
public function login()
{
$url = 'http://localhost/bizCloudDS/server/login';
$timestamp = gmdate("His");
$parameters = array("reqest"=>"login", "username"=> "admin", "API_AccessKey"=> "b5741564rda4a4d91965d3b5", "GMT_Timestamp"=> $timestamp);
$json = json_encode($parameters);
$encrypted = $this->bizEncrypt($json , 'enc' );
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $encrypted);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
echo $result;
curl_close($ch);
}
上面是一个从客户端到服务器的登录请求示例。在服务器端,服务器验证客户端提供的凭据,如果验证返回此json响应:
{"响应代码":"200","原因":"成功","Session_ID":"eu o 1 o bq eek d 5 vt b 0 ul t 9 nj 84 kii 1 k q ni"}
现在我希望如果用户发送另一个请求,比如create_user
,他将发送登录请求返回的session_id
。那么我如何通过服务器端的会话ID获取会话数据呢?
这是好的做法吗?
如果用户没有直接登录到您的系统,而是通过API使用第三方工具,那么使用会话ID没有意义,因为实际上没有传统意义上的会话。这是一次呼叫/响应。
使用某种请求签名来验证访问您的系统的个人是他们所说的人,并且有权执行他们试图执行的操作(即某种密钥散列),这似乎是一个更好的主意。对于每个调用,您将验证调用本身,而不是活动会话。
或者你可以使用持久的卷曲连接,但这可能更容易头痛。
我正在使用codeigniter。我有个奇怪的问题。我在用户登录时设置会话,并将其重定向到新页面。我观察到,会话有时设置,有时不设置。我尝试过使用codeigniter会话 以下是配置文件的外观:
问题内容: 如何以一种优雅的方式通过id获取任何HTTP会话或Web应用程序(Java 2 EE)中当前所有活动的HTTP会话? 当前,我有一个会话,一旦创建,便将其放入,一切正常,我可以随时通过会话ID从该映射中检索HTTP会话,但是看起来对象将永远不会完成……即使会话使该映射无效仍然引用无效的会话对象…我也已经阅读了这篇文章,在我看来,这是不可接受的… 换句话说,我需要一种可能性来查看任何Ht
我正在做一个项目,其中我的代码点火器放在wordpress主文件夹内,下面是我项目的结构。 codeigniter_folder有codeigniter文件。因为我在codeigniter中使用会话,我想在wordpress中访问该会话。但是当我在codeigniter中回声session_id()时,它会给我不同的值,当我在wordpress中回声session_id()时,它会给我不同的会话标
这里的问题是我试图通过ajax登录到我的系统。让我给你的第一个解释一下。 当我的用户输入他的登录详细信息时,它将通过Ajax请求发送到服务器,然后在验证后,我创建一个会话条目,并保存用户ID和登录标志等信息。 然后我通过Json将这些值返回给用户,由一段javascript处理,并将用户重定向到仪表板。 如果用户未经身份验证,则显示错误。 但现在这里发生的是。当我创建会话变量时以及当用户重定向到仪
我在Chrome上使用数据库的codeigniter会话有一个严重的问题:当我使用Chrome开发者工具刷新页面时,会话被破坏。 这是我的会话配置: 你知道吗?
我正在使用CodeIgniter和RestServer实现构建一个APIhttps://github.com/chriskacerguis/codeigniter-restserver 我想使用会话身份验证模式,所以我在配置/rest.php中设置了这个: 在config/config中。php: 我有一个控制器身份验证,其代码如下: 会话存储在数据库中,并包含来自$user的数据。pr回显数据(