現在的位置: 首頁 > 云計算 > 正文

Session和Cookie、Token有什么區別

2020年01月13日 云計算 ⁄ 共 1310字 ⁄ 字號 評論關閉

  Cookie和Session的區別:

  1、cookie數據存放在客戶的瀏覽器上,session數據放在服務器上。

  2、cookie不是很安全,別人可以分析存放在本地的cookie并進行cookie欺騙,考慮到安全應當使用session。

  3、session會在一定時間內保存在服務器上。當訪問增多,會比較占用你服務器的性能,考慮到減輕服務器性能方面,應當使用cookie。

  4、單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie。

  5、所以個人建議:

  將登陸信息等重要信息存放為session

  其他信息如果需要保留,可以放在cookie中

  Token 和 Session 的區別:

  session和 token并不矛盾,作為身份認證token安全性比session好,因為每個請求都有簽名還能防止監聽以及重放攻擊,而session就必須靠鏈路層來保障通訊安全了。如上所說,如果你需要實現有狀態的會話,仍然可以增加session來在服務器端保存一些狀態。

  App通常用restful api跟server打交道。Rest是stateless的,也就是app不需要像browser那樣用cookie來保存session,因此用session token來標示自己就夠了,session/state由api server的邏輯處理。如果你的后端不是stateless的rest api,那么你可能需要在app里保存session.可以在app里嵌入webkit,用一個隱藏的browser來管理cookie session.

  Session是一種HTTP存儲機制,目的是為無狀態的HTTP提供的持久機制。所謂Session認證只是簡單的把User信息存儲到Session里,因為SID的不可預測性,暫且認為是安全的。這是一種認證手段。而Token,如果指的是OAuth Token或類似的機制的話,提供的是 認證 和 授權 ,認證是針對用戶,授權是針對App。其目的是讓 某App有權利訪問 某用戶 的信息。這里的Token是唯一的。不可以轉移到其它App上,也不可以轉到其它 用戶 上。轉過來說Session。Session只提供一種簡單的認證,即有此SID,即認為有此User的全部權利。是需要嚴格保密的,這個數據應該只保存在站方,不應該共享給其它網站或者第三方App。所以簡單來說,如果你的用戶數據可能需要和第三方共享,或者允許第三方調用API接口,用Token。如果永遠只是自己的網站,自己的App,用什么就無所謂了。

  token就是令牌,比如你授權(登錄)一個程序時,他就是個依據,判斷你是否已經授權該軟件;cookie就是寫在客戶端的一個txt文件,里面包括你登錄信息之類的,這樣你下次在登錄某個網站,就會自動調用cookie自動登錄用戶名;session和cookie差不多,只是session是寫在服務器端的文件,也需要在客戶端寫入cookie文件,但是文件里是你的瀏覽器編號.Session的狀態是存儲在服務器端,客戶端只有session id;而Token的狀態是存儲在客戶端。

抱歉!評論已關閉.

奔驰宝马破解版下载 温州熟客麻将下载 期货配资交易 麻将来了怎么开好友房 大乐透几个号有奖 捕鱼街机在线 贵阳麻将规则 36选7开奖*规则 麻将游戏单机破解版 北京赛车pk10规律 英超赛程 武汉麻将技巧十句口 刮刮乐中奖图片100万 融资融券股票 网盛棋牌app下载 胆码没中拖码全中 湖南红中麻将怎么玩