对于你们许多人来说,这可能是微不足道的,但我还没有运气来理解我的用例的正确流程。我正在为我们的移动应用程序(IOS和Android)构建API,并且与大多数Web应用程序一样,API具有某些功能/页面(就网站而言),只能由登录用户访问。由于API构造中通常不鼓励会话,我想知道如何在API中跟踪这些内容。我的问题是,我如何确定:
基本上,我正在寻找一些以无状态方式维持国家的指导。
答案 0 :(得分:1)
在用户成功通过身份验证后尝试发送session_id。 这可能是由当前时间戳记的user_name的md5哈希创建的。
在服务器端I,您可以创建一个表session_data(session_id,user_id,last_access_time,session_data),它将session_id映射到用户。在last_access_time变旧之后,会话将变得过时。
这种方法不适合强烈的用户交互,因为您必须在每次请求后更新session_data。
在这种情况下,这样的表可以在任何快速存储中移动。
答案 1 :(得分:0)
在API开发中没有像登录状态等那样的概念......这就是为什么它是无状态的。您必须对每个请求进行身份验证(因此请在每次请求时发送用户名和密码)。
注意:您可以拥有会话,但它由REST客户端维护,因此API不知道任何内容。