首頁 > 常見問題 > token error什麼意思

token error什麼意思

(*-*)浩
發布: 2020-01-07 14:19:51
原創
49224 人瀏覽過

token error什麼意思

token error是令牌錯誤的意思。

Token 是在服務端產生的。如果前端使用使用者名稱/密碼向服務端請求認證,服務端認證成功,那麼在服務端會回傳 Token 給前端。前端可以在每次請求的時候帶上 Token 證明自己的合法地位                          (推薦學習:phpstorm

可以解決哪些問題呢?

Token 完全由應用程式管理,所以它可以避開同源策略

Token 可以避免CSRF 攻擊(http://dwz.cn/7joLzx)

#Token 可以是無狀態的,可以在多個服務間共用

Token 是在服務端產生的。如果前端使用使用者名稱/密碼向服務端請求認證,服務端認證成功,那麼在服務端會回傳 Token 給前端。

前端可以在每次要求的時候帶上 Token 證明自己的合法地位。如果這個 Token 在服務端持久化(例如存入資料庫),那它就是一個永久的身份令牌。

無論是從安全的角度考慮,或是從吊銷的角度考慮,Token 都需要設有效期限。

那麼有效期限多長合適呢?

#只能說,根據系統的安全需要,盡可能的短,但也不能短得離譜——想像一下手機的自動熄屏時間,如果設定為10 秒鐘無操作自動熄屏,再次點亮需要輸入密碼,會不會瘋?

如果你覺得不會,那就親自試一試,設定成可以設定的最短時間,堅持一週就好(不排除有人適應這個時間,畢竟手機廠商也是有使用者體驗研究的)。

然後新問題產生了,如果使用者在正常操作的過程中,Token 過期失效了,要求使用者重新登入…使用者體驗豈不是很糟糕?

為了解決在操作過程不能讓使用者感到Token 失效這個問題,有一個方案是在伺服器端保存Token 狀態,使用者每次操作都會自動刷新(延遲) Token 的過期時間-Session 就是採用這種策略來保持使用者登入狀態的。

然而仍然存在這樣一個問題,在前後端分離、單頁 App 這些情況下,每秒種可能發起很多次請求,每次都去刷新過期時間會產生非常大的代價。

如果 Token 的過期時間被持久化到資料庫或文件,代價就更大了。所以通常為了提升效率,減少消耗,會把 Token 的過期時保存在快取或記憶體中。

以上是token error什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新問題
java如何產生token?
來自於 1970-01-01 08:00:00
0
0
0
php - 使用者登入怎麼使用token驗證?
來自於 1970-01-01 08:00:00
0
0
0
javascript - 請問token驗證邏輯?
來自於 1970-01-01 08:00:00
0
0
0
運行php錯誤Parse error: syntax error, unexpected '.',
來自於 1970-01-01 08:00:00
0
0
0
javascript - js如何取得app保存的TOKEN?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板