thinkjs——session


工作中又遇到了session問題,於是整理一下有關thinkjs中的session使用小方法:

需要用戶登錄的網站基本上都離不開 Session,ThinkJS 里默認支持多種類型的 Session,如:filedbredis 等。

支持的 Session 類型:

  • memory 內存方式
  • file 文件類型
  • db 數據庫類型
  • redis Redis 類型 

使用 redis 類型的 Session 需要配置 Redis,具體配置為:

redis 配置,config/redis.js

export default { host: "127.0.0.1", port: 6379, password: "", timeout:24*60*60,   //一天
  log_connect: true };

Session 默認配置如下,可以在 src/common/config/session.js 中進行修改:

export default { type: "file", name: "thinkjs", //對應 cookie 的名稱
  secret: "", //Session 對應的 cookie 是否需要加密
  timeout: 24 * 3600, //過期時間,默認為一天
  cookie: { // cookie options
    length: 32 }, adapter: { file: { path: think.RUNTIME_PATH + "/session" } } };

關於cookie的配置,config/cookie.js

export default { type: "file", name: "thinkjs", //對應 cookie 的名稱
  secret: "", //Session 對應的 cookie 是否需要加密
  timeout: 24 * 3600, //過期時間,默認為一天
  cookie: { // cookie options
    length: 32 }, adapter: { file: { path: think.RUNTIME_PATH + "/session" } } };

1.清除session 

await this.session();
2.設置session   
this.session('ticket_weixinshare',ticket);//key value形式

3.讀取session

await this.session("ticket_weixinshare");//用key值獲取session

總結:其實之前的自己,每次一遇到有關session的問題,就會默默的給自己施加壓力,並告訴自己:這個很難,不好解決,於是不由自主的頭就疼了……不過隨着入手的項目越多,慢慢的意識到原來有關session的問題並不是那么的頭疼,反而是自己形成了錯誤的思維定式!以后,改正缺點~

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM