如何解决JWT在CRUD应用程序中有意义吗?
例如,如果在确认给定用户的授权后立即在同一端点中对数据库进行调用,为什么要使用JWT代替SessionID?在这种情况下,这对我来说毫无意义,有点失去了目的。
我了解JWT的想法是消除对数据库的调用,从而使其更具可伸缩性和效率。但是,如果之后我打电话给数据库,那有什么意义呢?
使用会话ID,我将有两个对db的调用,而不是对JWT的加密函数计算,然后对数据库的调用。
那么JWT相对于Session ID的优势在哪里?还是归结为事实,那就是CRUD端点或与数据库对话的端点不是JWT的亮点,我在这里吗?
解决方法
JWT与使用会话相比没有任何好处,JWT提供了一种在客户端而不是在服务器上维护会话状态的方法。
对于服务器端会话,您要么必须将会话标识符存储在数据库中,要么将其保留在内存中,并确保客户端始终访问同一服务器。这两个都有缺点。对于数据库(或其他集中式存储),这将成为瓶颈和需要维护的东西-本质上是对每个请求都要执行的额外查询。与客户端建立会话意味着您删除了对服务器端会话的依赖,但这会带来一系列挑战。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。