浅谈Token理解运用

Posted easyauthor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅谈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);

    }

});        

技术分享图片

(简单的数学)

 

(在下没钱没色,肾虚体弱还望各位大佬且行放过放过)

技术分享图片

       

                               

            

 

以上是关于浅谈Token理解运用的主要内容,如果未能解决你的问题,请参考以下文章

浅谈Java反射

浅谈闭包

37.浅谈js原型的理解

浅谈-对modbus的理解

CAP理论,浅谈我的理解

浅谈元类(个人理解)