webAPI里面的token嗎?
對于剛接觸編程的同學而言,API與WebAPI、Token這些概念可能分辨不清,下面我們先來了解一下。
API與WebAPI是啥?1、API指的是接口
API它就是接口,可以理解為是將某種服務封裝起來提供給他人調用,調用者不需要了解此功能是如何實現的,只要傳遞一些參數就能實現特定功能,十分方便。
API的表現形式有很多種,比如常見的有:RPC接口、基于HTTP協議的接口(WebAPI)、Web Service接口等。
2、WebAPI
WebAPI其實就是基于HTTP協議的API,像我們說的RESTful其實就是WebAPI。我們可以借助編程語言(如:Java、.NET)來開發WebAPI。WebAPI是輕量、簡單的。
Token是什么?Token是指令牌,它代表的安全認證機制,客戶端瀏覽器請求服務器時會將Token以GET傳參或者Header請求頭的方式傳遞至服務器端,服務器端會判斷此Token的合法性,若合法則允許訪問資源,反之拒絕。
Token 一般是包含公鑰,私鑰,時間,隨機碼等元素通過MD5,SHA等加密技術由服務器端加密而成的密文,然后返回給客戶端進行臨時存儲。鑒于WebAPI 有多種請求方式,比如GET,POST,DELETE,PUT,而Token的驗證是通用驗證,建議存儲在Header頭部,用戶將Token放在請求頭部,WebAPI獲得Token后根據服務端的Token信息做驗證,如果驗證成功,則提供相應的資源數據,否則禁止訪問,如圖所示:
Token的特性1、Token是簡單的、無狀態的,特別適合在分布式環境下使用;
2、Token由服務器端生成和校驗,在客戶端臨時存儲;
3、客戶端獲取服務器端返回的Token之后,后續請求都要把Token傳遞給服務器端進行校驗,服務器每次都要解析Token;
4、Token是有過期時間的,若Token失效,則重定向至授權頁進行用戶身份校驗,校驗成功后重新發放Token給客戶端。
以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我了解更多科技知識!