会话变量,如Python中的PHP

时间:2013-09-01 15:39:39

标签: python session cgi

我正在使用python创建一个Web应用程序,我想为会话保存一些变量,直到浏览器关闭,就像我用PHP做的那样:

<?php
session_start(); 
$_SESSION['size']='small'; 
?>

什么是简单而安全的方式?

我正在使用lighttpd和apache所以我想要一些可以同时使用的东西。

我也会保存密码,所以我需要安全的东西。

2 个答案:

答案 0 :(得分:2)

在PHP中使用session_start()时,你也没有使用“纯代码”,它也是烟雾和镜子......

抛弃所有警告:您可以做的是使用全局字典来存储会话数据。一旦客户端发出请求并通过“会话”-cookie,您将查找该字典中的所有会话数据。如果没有条目或客户端没有会话cookie,则创建一个新会话并将cookie传递给客户端。 session-cookie由一个随机的,比方说16个字符串组成。其他客户端无法猜测其他用户的会话,因为密钥空间太大。有时,您会从服务器暂时没有看到的会话中删除字典。

你应该在CherryPy的文档中take a look使用会话。

答案 1 :(得分:0)

我决定用饼干做,这更容易/更安全。以下是每个感兴趣的代码:

# importing the libs
from http import cookies
import os

# setting the cookies
C = cookies.SimpleCookie()
C["cookie1"] = "some_text"
C["cookie2"] = "another_text"
print(C.output())

# sending the html header
print('Content-type: text/html;\n')

# reading the "cookie1" cookie
cookievalue = cookies.SimpleCookie(os.environ["HTTP_COOKIE"])
print (cookievalue["cookie1"].value)