NetCoreApi框架搭建三、JWT授权验证)

 

1.首先还是粘贴大神的链接

         虽然说大神的博客已经讲得很详细了,但是此处还是自己动手好点。

   首先配置Startup Swagger的验证

 

2.新建一个项目存放tokenmodel和生成token并且存入缓存

以上是tokenmodel 具体属性可以自定义

缓存帮助类安装nuget包Microsoft.Extensions.Caching.Memory

代码:

生成token字符串

 

代码:

 新建中间件:TokenAuth

 

代码:

在Startup配置注意这里需要放在app.UseMvc();上面

注册缓存和验证:

3.验证使用

为了验证使用我直接写了一个生成token字符串的接口

点击验证,这样你的接口就可以访问成功了。

2019.9.11更新

感觉出现瓶颈了,搭完简单的框架之后就不知道要干嘛了,感觉一下没有目标了,所以就抽空把JWT来深入一下。

前面讲的JWT是存入缓存的,所以用不用JWT生成字符串其实都无所谓,下面讲一下JWT的身份验证。

 这生成JWT字符串的类里面加了两个方法,一个是生成字符串,一个是解析字符串的

代码:

同时在登录哪里登录成功之后调用生成字符串的方法,并返回。

 

 实体也根据自己的情况修改了一下,这里其实主要用的角色这个字段

 

 还加了一个配置类,主要配置密钥和过期时间的

 

 最后就是中间件的修改了,这里给解析出来的身份进行了授权。

 

 然后就是Startup配置修改了,这里用的是画红线的那个,大神说可以用多个身份的,我试了没成功,如果有哪位知道原因也可以告诉我一下

 

 然后和之前一下使用就可以了,登录的时候拿到JWT字符串,然后访问接口的时候进行认证(直接用Swagger上的锁就可以)

 

 

posted @ 2019-08-12 15:05  程序媛雨  阅读(1495)  评论(0编辑  收藏  举报