D9 的任务是实现一种验证用户身份的方法。用户使用客户端请求我们的服务端应用,在服务端这里有时候需要知道请求是谁发出的,这就需要验证请求用户的身份。方法有很多,这次任务会介绍一种基于 JWT 的身份验证方法。
JWT 身份验证的流程
登录
在我们的服务端应用里需要提供一个登录接口,负责处理登录请求,检查用户名与密码以后响应签发的 JWT 或异常。
首先用户要先请求登录,一般就是使用他们在应用里的用户名与密码请求登录接口。这个登录接口会检查用户提供的用户名与密码,比如先看一下用户名在应用里是否存在。如果存在,再检查这个用户提供的密码跟我们存储在应用数据库里的密码是否匹配,如果匹配,登录接口就会给这个用户签发一个 JWT,并且把这个 JWT 响应给用户的客户端。