我想構建一個Web應用程序,並瞭解過程中的技術。我爲我的框架選擇了Python Bottle。爲了實現網站上的用戶,我需要管理會話。是否有一種「簡單」或「簡單」的方式來實現Python中的會話?我不在乎做這100%的權利。我只想了解發生了什麼。在python中簡單實現會話?
Bottle documentation建議我使用另一個庫,但我不喜歡那個,因爲它增加了更多的黑盒子(閱讀源代碼是最終的目標......)。
我已經谷歌搜索「實施會議蟒蛇」。我剛剛找到this。
我想構建一個Web應用程序,並瞭解過程中的技術。我爲我的框架選擇了Python Bottle。爲了實現網站上的用戶,我需要管理會話。是否有一種「簡單」或「簡單」的方式來實現Python中的會話?我不在乎做這100%的權利。我只想了解發生了什麼。在python中簡單實現會話?
Bottle documentation建議我使用另一個庫,但我不喜歡那個,因爲它增加了更多的黑盒子(閱讀源代碼是最終的目標......)。
我已經谷歌搜索「實施會議蟒蛇」。我剛剛找到this。
蟒蛇竟真的無關,它只是看看「實現會話數據」 ......這裏是落實會議的一種方式......
from pyDES import * # or some other crypto library
my_app_secret = "hello crypto"
def save_session(data):
response.set_cookie("session", triple_des(my_app_secret).encrypt(json.dumps(data), padmode=2))
def load_session():
try:
return json.loads(triple_des(my_app_secret).decrypt(response.get_cookie("session"))
except:
return {}
session_data = load_session()
print session_data
session_data["some_info"] = "Yellow Submarine"
save_session(session_data)
或者你可以保存到數據庫和剛在cookie中保存一個哈希標識符......或者其他各種方法......(你甚至不需要對它進行加密......你可以像添加一個校驗和字節到數據串的末尾那樣簡單)
在代碼中編寫加密密鑰是否很常見(安全嗎? – isthisreallife
你可以將它保留在任何你想要的地方(環境變量...不同的配置文件...命令行參數...)我認爲在大多數情況下人們只是包括它...(只是不要發佈在github上,如果你這樣做) –
假設我想從我的會話中唯一需要跟蹤登錄的用戶。是我保存到我的會話cookie任意的消息?應該保存什麼?非常感謝 – isthisreallife
不是。你可以嘗試自己實現sessionmiddleware api。或者你可以使用燒杯。 – pvg
他問如何實現它...所有的會話都是用戶數據,它比標準的cookie提供更多的安全性...... –