安装依赖
extra-streamlit-components==0.1.81
单例对象
import extra_streamlit_components as stx # 全应用单例:CookieManager() 构造时会渲染一个 component widget, # 若多处各自实例化会用相同默认 key="init" 导致 StreamlitDuplicateElementKey。 # 这里在模块级只构造一次,各处共享同一个实例。 cookie_manager = stx.CookieManager(key="app_cookie_manager")
存储cookie
cookie_manager.set( "utoken", utoken, expires_at=datetime.datetime(2026, 12, 31), )
查询Cookie
utoken = cookie_manager.get("utoken")
删除Cookie
cookie_manager.delete("utoken", key=f"del_utoken_{int(time.time() * 1000)}")
可以根据cookie信息以及对cookie信息的校验来保持登录状态。