我的login控制器继承了基类BaseController,基类中有JWT验签
每当运行login控制器中的方法时候,触发JWT验签,验签失败即跳转至'/admin/login/index'
方法
跳转至改方法之后,为什么不会处罚再次验签?
解答:
安排~
在典型的 HTTP 请求生命周期中,每个请求都是独立的,请求完成后,其相关的状态信息和变量会在请求结束时被清理。因此,当一个请求处理完毕后,新的请求开始时,不会保留前一个请求的状态信息。
在代码中,verifyJWT 方法中的逻辑是在每次请求处理时执行的,而且该方法似乎是在基类的构造方法中调用的。在一个请求生命周期内,基类的构造方法只会被调用一次。这就解释了为什么在新的请求开始时,不会再次经过 verifyJWT 方法,除非该方法在新请求中被显式调用。
如果在 verifyJWT 方法中执行了跳转,并且该跳转导致了一个新的请求,那么在新的请求中会再次执行该方法。但通常情况下,这是由于在当前请求中执行了跳转或重定向,而不是在正常的请求处理流程中。
如果你在控制器或中间件中手动调用了 verifyJWT 方法,那么就会再次执行。否则,在正常的请求处理过程中,新的请求开始时不会再次执行之前请求的方法,因为它们属于不同的请求生命周期。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?