淺談Token理解運用


周末沒帶電腦,閑着也是閑着,出來分享一點東西,也當自己學習和鞏固了。

 

今天分享一下Token的理解,首先Token的定義是什么?

 

概念

       Token被翻譯成為('令牌','標記')在計算機中的含義也差不錯('計算機身份認證安全令牌'),token其實說的更通俗點可以叫暗號,在一些數據傳輸之前,要先進行暗號的核對,不同的暗號被授權不同的數據操作。

 

傳統的Seeion驗證

      Http協議進行數據的提交,服務器接收到用戶帳號和密碼進行驗證,在之后的一系列操作,因為http協議本身是一種無狀態的協議,再下一次請求必須重新發送一次帳號和密碼來進行認證。

       根據http協議我們沒辦法做一個長期的驗證,為了讓應用能夠識別身份,我們需要在服務端進行身份的保存,所以使用session進行保存,這就是傳統的session認證。

       缺點:session保存是使用的內存,當用戶量大的時候會對服務器增加很大的壓力。

 

分類

訪問令牌(Access Tokens)是Windows操作系統安全性的一個概念。一個訪問令牌包含了此登陸會話的安全信息。

會話令牌(Session token)用於解決表單重復提交問題,當客戶端提交一次之后(也提交了token並且匹配服務器token)服務器接受成功以后將更新token所以客戶端再次提交token將不再匹配。

 

接口靜態token

客戶端請求服務器將靜態token直接提交給服務器

服務器對令牌進行驗證並返回數據

 

Token創建

webapi接口token定義

 

public string GetToken()

{

         string token=md5('control'+'action'+'自定義密鑰');

         return token;

}

 

Token的使用

方式一:將token放入請求頭

$.ajax({

    type: "POST",

    headers: {

        Accept: "application/json; charset=utf-8",

        userToken: "" + userToken

    },

    url: "localhost/api/Home/GetString",

    data: mydata,

    contentType: "application/json",

    dataType: "json",

    success:function(data){

                    

    }

});

 

方式二:在請求之前設置request請求頭

$.ajax({

    type: "POST",

    url: "/index",

    data: mydata,

    contentType: "application/json",

    dataType: "json",

    beforeSend: function(request) {                

               request.setRequestHeader("Authorization", token);

    },

    success: function(data) {

           alert(data.msg);

    }

});        

(簡單的數學)

 

(在下沒錢沒色,腎虛體弱還望各位大佬且行放過放過)

       

                               

            

 


免責聲明!

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



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