【问题标题】:Accessing new access-token upon reload from redux-token-auth从 redux-token-auth 重新加载时访问新的访问令牌
【发布时间】:2019-04-07 09:01:08
【问题描述】:

我正在构建一个由 React 前端和后端中的几个 Rails API 组成的 Web 应用程序。一个 Rails API 用于用户身份验证,另一个用于存储,所有这些都通过 resftful API 端点进行协调。对于客户端身份验证,我是用户 redux-token-auth 与用户身份验证 API 上的 devise_token_auth gem 配对。在存储 API 上,它通过让用户身份验证 API 在登录时将客户端标识符和访问令牌发送到存储 API 来确认用户已通过身份验证。客户端通过存储验证访问令牌和客户端标识符以进行授权。一切正常,但我遇到的问题是,在重新加载客户端应用程序时,会生成一个新令牌,并且必须将这个新令牌发送并存储在存储 API 中才能使授权工作。

我查看了 redux-token-auth 的代码,并且当客户端重新加载时会调用 verifyCredentials 函数。这个函数似乎是一个不返回承诺的承诺。进一步 verifyCredentials 调用 verifyToken,它将访问令牌存储到本地存储中。但是,这也不会返回我可以实现的承诺。我尝试在调用 verifyCredentials 并通过客户端中的 axios 将新令牌发送到存储 API 后立即更新访问令牌,但它始终发送最后一个令牌而不是新更新的令牌。我在应用程序生命周期的不同时间尝试以各种方式执行此操作,但都失败了。

是否有任何可行的解决方案来解决这个问题,或者无论如何将 verifyToken/VerifyCredials 转换为返回我可以访问的响应数据的承诺?

【问题讨论】:

    标签: ruby-on-rails reactjs authentication redux devise-token-auth


    【解决方案1】:

    晚了,但试试:

    【讨论】:

      猜你喜欢
      • 2020-04-14
      • 1970-01-01
      • 2018-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-31
      • 2016-11-28
      • 1970-01-01
      相关资源
      最近更新 更多