基于令牌的身份验证
基于令牌的身份验证
ABPZERO是使用浏览器的cookie来做的身份验证的。
但是,如果你想要使用WebApi和应用层的服务类(他们通过动态webapi请求的,此时这些请求都是暴露在外部的)来访问移动设备。这个时候你就需要基于令牌(Token)的身份验证机制。
ABPZERO是支持token的身份验证的基础结构。
在控制器AccountController中,通过webapi来对身份验证的操作,以获得令牌。我们在下一次的请求中就可以使用获得的令牌信息。
我们使用Postman来模拟登陆过程,postman是一个chrome插件。
身份验证
只是向 http://localhost:6234/api/Account/Authenticate 发送请求,请求类型为json(Context-Type="application/json")
下图所示:
我们发送了一个Json请求,正文为:
{
"tenancyName":"default",
"userNameOrEmailAddress":"admin",
"password":"123qwe"
}
其中包括了tenancyName(租户名称)、userNameOrEmailAddress(用户名)、password(密码)。
相应并且返回的result就是令牌。我们可以将其保存,在下一次的请求中使用。
使用 API
我们在上面的身份授权中,得到了令牌,那么我们就可以用它来做该账户权限范围内的任何事情。所有的应用层的服务都是可以通过远程来调用的。
例如,我们可以使用“userservice”来获取用户列表。
图上的为一个POST请求,访问路径:http://localhost:6234/api/services/app/user/GetUsers请求类型依旧为json,内容则为Authorization="Bearer 刚刚得到的令牌内容"。请求的正文为{}。
当然请求不同的API返回的响应正文也会不同嘛。
几乎所有的UI层都可以使用webapi来访问,毕竟UI使用相同的webapi嘛。(and can be consumed easily.)
为了方便和大家交流我建立了几个群,欢迎大家加群交流哦~
- 【52ABP .NET CORE 实战交流】:633751348
- 【ASP.NetCore Mvc EF入门学习】: 104390185
- 【ABP代码生成器交流群】104390185:
- 【ABP架构设计交流群4】726578484:
作者:梁桐铭(52ABP:基于DDD强大稳定的WEB应用框架! )
出处:http://www.cnblogs.com/wer-ltm
本作品由角落的白板报
创作,采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
欢迎转载,但任何转载必须保留完整文章,在显要地方显示署名以及原文链接。如您有任何疑问或者授权方面的协商,请
加群沟通留言。