token
token的意思是「令牌」,是使用者身份的驗證方式,最簡單的token組成:uid(使用者唯一的身份標識)、time(當前時間的時間戳)、sign(簽名,由token的前幾位+雜湊演算法壓縮成一定長的十六進製制字串,可以防止惡意第三方拼接token請求伺服器)。還可以把不變的引數也放進token,避免多次查庫。
基於token的身份驗證的過程如下:
使用者通過使用者名稱和密碼傳送請求。
程式驗證。
程式返回乙個簽名的token 給客戶端。
客戶端儲存token,並且每次用於每次傳送請求。
服務端驗證token並返回資料。
每一次請求都需要token。token 應該在 http 的頭部傳送從而保證http請求無狀態。我們同樣通過設定伺服器屬性 access-control-allow-origin:* ,讓伺服器能接受到來自所有域的請求。
需要注意的是,在acao頭部標明(designating)*時,不得帶有像http認證,客戶端ssl證書和cookies的證書。
注:基於令牌能夠使用 ajax 呼叫伺服器,在任何網域名稱下你都可以使用http header頭部來傳輸使用者資訊。
cookie
cookie是儲存在本地終端的資料。由伺服器生成,傳送給瀏覽器,瀏覽器把 cookie 以 k-v 形式儲存到某個目錄下的文字檔案內,下一次請求同一**時會把該 cookie 傳送給伺服器。
由於 cookie 是存在客戶端上的,所以瀏覽器加入了一些限制確保 cookie 不會被惡意使用,同時不會佔據太多磁碟空間,所以每個域的cookie數量是有限的。
session
session即「會話」,當使用者開啟某個web應用時,便與web伺服器產生一次session。伺服器使用session把使用者的資訊臨時儲存在了伺服器上,使用者離開**後session會被銷毀。這種使用者資訊儲存方式相對cookie來說更安全,可是session有乙個缺陷:如果web伺服器做了負載均衡,那麼下乙個操作請求到了另一台伺服器的時候session會丟失。
nosession意味著你的程式可以根據需要去增減機器,而不用去擔心使用者是否登入。
cookie 和session的區別
cookie 資料存放在客戶的瀏覽器上,session 資料放在伺服器上。
cookie 不是很安全,別人可以分析存放在本地的 cookie 並進行cookie 欺騙,考慮到安全應當使用session。
session會在一定時間內儲存在伺服器上。當訪問增多,會比較占用你伺服器的效能,考慮到減輕伺服器效能方面,應當使用 cookie。
單個 cookie 儲存的資料不能超過4k,很多瀏覽器都限制乙個站點最多儲存20個 cookie。
所以建議: 將登陸資訊等重要資訊存放為 session, 其他資訊如果需要保留,可以放在 cookie 中.
token 和session 的區別
session 和 oauth token 並不矛盾,作為身份認證 token 安全性比session 好,因為每個請求都有簽名還能防止監聽以及重放攻擊,而session 就必須靠鏈路層來保障通訊安全了。如上所說,如果你需要實現有狀態的會話,仍然可以增加 session 來在伺服器端儲存一些狀態.
token 就是令牌,比如你授權(登入)乙個程式時,他就是個依據,判斷你是否已經授權該軟體;
cookie 就是寫在客戶端的乙個txt檔案,裡面包括你登入資訊之類的,這樣你下次在登入某個**,就會自動呼叫cookie自動登入使用者名稱;
session和cookie差不多,只是session是寫在伺服器端的檔案,也需要在客戶端寫入cookie檔案,但是檔案裡是你的瀏覽器編號.
session的狀態是儲存在伺服器端,客戶端只有session id;而token的狀態是儲存在客戶端。
貝瑞特 我這樣認識了中國
貝瑞特和趙啟正都認為,中國沒有必要計較國際社會中小部分人對中國的偏見,中國目前所面臨的競爭未必是壞事。6月23日,英特爾董事長克瑞格 貝瑞特開始了他作為英特爾高層的第14次訪華之旅。此次中國行的第一天,貝瑞特選擇了災區四川作為第一站。在考察了災區的災情後,白髮蒼蒼的貝瑞特在四川這片曾與他結下深厚情意...
我又重新認識了Gulp
之前我寫過一篇 gulp入門筆記 其實那是對這個工具的第一次認知,讓我知道了這個工具可以用來幹嘛.但是隨著使用它的時間變長了,我發現,僅僅使用npm上所提供的gulp外掛程式,遠遠不能滿足我日常的需求.過了一段時間以後,已經能夠大致理解流這個字的含義了.先看一段 gulp.task copyfile...
今天終於對記憶化搜尋有點認識了
dp與記憶化搜尋關聯密切,原來一直搜尋題瞬間就能寫出 一遇到記憶化,就暈了,發現怎麼也沒法記,今天發現我的搜尋方向不對。以後自頂向下搜尋,這樣的話,前面狀態先計算出來,而要用到的是後面的狀態,所以不知道怎麼記錄。用題目說明。時間限制 3000 ms 記憶體限制 65535 kb 描述這會,定向越野進...