如何在android应用程序中实现cookie

时间:2011-03-14 11:25:59

标签: android cookies

我想在Android中创建一个登录应用程序。

项目的要求是使用cookie存储用户名和密码两天。

可以使用cookies吗?如果是,那怎么样?你能给我代码吗?

注意:我无法使用网络视图。

3 个答案:

答案 0 :(得分:5)

作为一名评论者已经说过,您不应该在密码中存储密码(即使是加密形式)。您可以存储的是会话ID。当用户登录应用程序时,应用程序会为他/她生成会话ID,该会话ID将保持有效两天。在您对应用程序进行的每个请求中,都将会话ID添加为HTTP标头。

您可以在首选项中存储会话ID和发布日期时间。当用户需要向应用程序发出新请求且会话未到期时,您可以读取存储的值。

答案 1 :(得分:1)

正如Reno所说,尽量避免将密码存储在cookie中。相反,您应该让服务器在登录时生成sessionID,并在两天后让此ID在服务器上过期。因此,您可以使用登录时生成的用户名和会话ID登录。

我想要,你可以将那个sessionID存储在cookie中。

答案 2 :(得分:1)

如果您不想将其集成到浏览器中,请继续浏览。

如果查看HTTP协议,您可以看到客户端以明文形式在请求中发送cookie。这意味着您每次请求页面时都应该让应用程序提供它们。这对于仅限本地的cookie无效,但我认为您对这些不感兴趣。如果要从服务器端设置cookie,则必须调整应用程序以解析响应并查找cookie。 (也是HTTP协议)

为了更好地查看您需要发送或接收的原始数据,您可以使用Wireshark或类似工具监控流量,并查看请求/响应的外观。

我目前正在开发一个我需要在iPhone上实现的网络服务,这是我第一次想到这一点。我还没有实现这个(我的网络服务还没有完成)所以我现在还没有更多可以告诉你。

Edit: 关于此的有用页面可能是位于此处的Wikipedia HTTP Cookie页面。