浅谈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理解运用的主要内容,如果未能解决你的问题,请参考以下文章