聊一聊實現Session跨域的問題


本文來自有着豐富經驗的大神和一個小白的對話!  

 為了閱讀方便,小白代號Q, 大神代號W

Q: 怎么實現session跨域?

W: 別用系統session即可

Q: 那用什么session ?自己存session?

W: 自己有啥不行嗎   系統的方案是改配置,允許一些域。 不過沒用直接自己處理會話來的干脆實際   

  會話信息就是你說的session 默認系統是跟域名綁定的。但是跨域的本質是后端多系統共享,所以在后端處理數據存取最為直接

路人甲: 現在不是流行 token嗎 ? 這不就是一個另類的session嗎

Q: token和session不是一回事 token保存數據庫的

Q: token不就標識嘛?怎么存數據?

W: 一般sessionid可以認為是一種token

路人甲:session一般實現也是在cookies中存了個token。

W:就是cookies里那個 所以session怎么可能是t

Q: key是在cookie,value是在服務端吧

W:但是這也說明了為什么我說自己實現就可以回避系統的域限制了   

  前端token 后端 基於token的分布式緩存系統 用來替代session機制 已經是現實情況了。。。

路人甲:token是保存在數據庫,還是另一台服務器,如緩存,nosql

W: token是前后端都有的一串值 用此來維系 一對關系 就等於是session的 key了   

  每個用戶一個session對象 一個會話對象 一個key 一個token   

  token在分布式里應該保存在redis memcached 這類高速內存數據庫

《個人整理,有什么不合理的地方請在下面留言評論》


免責聲明!

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



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