我最近在实施OAuth时遇到了React Native和Redux的问题,这引起了一些令人头疼的问题。方案如下:
getAccessToken()
之类的服务方法,该方法将始终返回有效的访问令牌,如果令牌即将到期,则会更新它们并更新商店。 Redux中的数据流是严格单向,这意味着,用户调用动作创建者,而动作创建者又将调用reducer,这将改变商店中的状态,组件将重新启动用新的状态渲染。但是,我无法将组件的状态绑定到访问令牌;每当用户想要进行休息呼叫时,她应该呼叫getAccessToken()
以确保她在发送之前收到有效的令牌。
有关如何使用 React Native和Redux 实现此功能的任何建议?谢谢。
答案 0 :(得分:0)
如何以你的方式做到:
getAccessToken().then(token => myOtherCall(token))
我该怎么做:
使用redux-saga,我会设置一个每隔X秒刷新一次令牌的循环。如果请求因401状态代码而失败,我会刷新令牌并重试api调用。