【问题标题】:where should i set the session api and client我应该在哪里设置会话 api 和客户端
【发布时间】:2012-10-24 16:51:10
【问题描述】:

情况是这样的,我已经设置了2个codeigniter安装。

一个是客户端,一个是 api。对此将进一步改进

  1. 客户端将不再由 CI 制作,因为我没有使用它的功能。我只是想从一个 mvc 框架开始。

我的问题是我应该在哪里存储会话?在登录期间。

以下是我的做法,但我认为我做错了。

  1. 我从客户端创建了一个登录。这个将登录凭据发送到 api,然后验证 client 发送的这些信息,并且无论登录凭据是否都将返回 消息/响应是否有效。

如果登录详细信息有效,api 将在其控制器中设置会话,如下所示

if(true) {
    $this->session->set_userdata($array);
}

这是在我创建的login_controller 中。这是为 api 的 client 设置会话的正确方法吗?

【问题讨论】:

    标签: ajax api codeigniter session


    【解决方案1】:

    你的概念是对的。您希望在验证用户提供的有效凭据后设置会话用户数据。

    也就是说,请确保您使用的是加密的 cookie,如果您要处理敏感数据,请将会话数据存储在数据库中。将其存储在数据库中会导致 CodeIgniter 中会话的工作方式出现一些奇怪的问题(主要是使用 flashdata),但肯定识别的额外好处可能是值得的。

    通过将会话数据存储在数据库中,您可以更积极地验证用户是他们声称的身份(根据会话 ID 等)。原因是会话数据只存储在数据库中,而不是会话 cookie(它只保存会话 ID 和其他一些信息)。这样,即使有人设法解密了 cookie,他们也无法修改其用户数据以伪装成其他人,就像您可以使用仅使用 cookie 的方法一样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-08
      • 2012-12-31
      • 2021-12-26
      • 1970-01-01
      • 2020-02-01
      • 1970-01-01
      相关资源
      最近更新 更多