如何从 devise_token_auth 接收新令牌?

How to receive new token from devise_token_auth?

您好,目前我正在使用 devise_token_auth gem gem 进行 SPA(单页应用程序)。我在前端使用 React-redux,在后端使用 rails。身份验证将通过在每次请求时向服务器发送令牌来完成。直到这一切都运行顺利:

问题陈述:

令牌必须存储在浏览器中,这使我的应用程序容易受到攻击

解决方案:

更改每个请求的令牌。够好了!!!

问题陈述:

但要接收新令牌,我必须发送用户电子邮件 ID 和密码。这意味着这两个字段必须存储在浏览器的某个地方。在浏览器中存储用户密码是好习惯吗??

或者有更好的方法来做到这一点..有什么想法吗???

首先,您不必担心收到新令牌。 devise_token_auth 每次验证后自动为您提供一个新令牌。See the documentation devise_auth_token token management

例如:如果您使用此 api 进行令牌验证 /validate_token,则必须发送 uid, client, access_token。一旦您的令牌成功验证,您将在 header 中收到一个新令牌,否则会收到一条错误消息。