有没有办法在django中存储独立于浏览器的cookie?

时间:2010-07-03 11:53:48

标签: python django flash cookies

django有没有办法存储独立于浏览器的cookie? 有没有像SharedObject那样的技术..?

3 个答案:

答案 0 :(得分:2)

Django视图接收HttpRequest的实例作为其第一个参数。该对象有一个属性COOKIES,我引用,

  

标准Python字典   包含所有cookie。钥匙和   值是字符串。

您当然可以以任何您喜欢的方式保存该字典(例如,将其腌制成一个字节,并将该blob保存为合适实体的合适属性等)。

相反,当您实例化HttpResponse作为视图的结果返回时,您可以调用其set_cookie方法一次或多次,以设置您可能要设置的任何Cookie。

答案 1 :(得分:1)

正如您在评论中提供的链接中所解释的那样,共享对象不会存储为浏览器Cookie,它们完全由Flash Player管理。这就是他们独立于浏览器的原因。

所以答案是没有,你不能使用Django(或任何其他网络框架)存储独立于浏览器的cookie。

一种可能的解决方案是,如果访问者需要登录到您的站点,您可以将信息存储在服务器上,可能存储在数据库中。但是,如果您不要求用户登录,则无法使用。您的另一个解决方案是仅使用Flash存储Cookie。

答案 2 :(得分:0)

无法设置cookie,因此它可以在计算机上的所有浏览器中使用。您可以在Flash中执行此操作,因为它是外部库(适用于所有浏览器)。