使用Python Eel框架的应用重启后Cookie重置问题求助
问题原因
Eel默认启动的Chromium实例采用临时会话模式,Cookie仅存于内存中,应用重启后会被直接清除——哪怕设置了Cookie过期时间也没用,因为没有持久化的用户数据目录来存储这些Cookie。
两种可行解决方案
方案一:改用localStorage存储数据
localStorage是浏览器端的持久化存储方案,数据会直接保存在本地硬盘,除非手动清除,重启应用后依然存在。直接修改你的JavaScript代码即可:
// 存储路径 function rememberLastPath(path){ localStorage.setItem('lastPath', path); } // 获取路径 function getLastPath(){ return localStorage.getItem('lastPath'); }
方案二:让Eel使用持久化的用户数据目录
通过给Chromium指定--user-data-dir参数,让Cookie和其他浏览器数据保存到本地固定目录,重启后不会丢失。修改Python启动代码:
import eel eel.init('web') # 替换为你的web资源目录 # 指定本地目录存储用户数据,首次启动会自动创建该目录 eel.start('index.html', cmdline_args=['--user-data-dir=./eel_user_data'])
内容的提问来源于stack exchange,提问作者WILLIAMS SAMUEL
相关产品推荐
相关产品推荐

