首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Redux-Thunk中使用fetch-api奇怪地刷新了报头

Redux-Thunk中使用fetch-api奇怪地刷新了报头
EN

Stack Overflow用户
提问于 2015-11-13 23:31:59
回答 1查看 448关注 0票数 1

嗨,我刚遇到一个我不完全理解的问题。

我的API在每次请求时将一个新的Auth-Token传递给我的客户端,以便在下一个请求中使用,并再次获得一个新的令牌。但有一点不同:在短时间内(几秒钟内)发送的请求将被视为批处理,所有这些请求都可以且必须使用相同的令牌,因为API不会为这些请求提供新的令牌。

奇怪的是,所有的批处理请求响应都不包含新的令牌,但我的客户端应用程序仍然设法用旧的和过期的令牌刷新它的状态……

下面是我要做的:每次请求成功时,我都会发送一个“刷新令牌”操作,该操作从响应头获取新信息,如下所示:

代码语言:javascript
复制
let accessToken = response.headers.get("Access-Token")
let expiry = response.headers.get("Expiry")
dispatch(refreshTokens({
    status: "loggedIn",
    accessToken: accessToken,
    expiry: expiry
}));

response来自fetch-api,在我看来,当头部不存在时,它会给我过期的响应。

非常感谢能向我解释发生了什么的人。现在,我不满意的解决方案是关闭批处理请求功能。

EN

回答 1

Stack Overflow用户

发布于 2015-11-19 07:53:00

我认为不可能根据你分享的代码片段来缩小问题的范围,但我推荐以下几点:

  1. 使用redux-devtools检查发生的操作及其对state.
  2. Consider的影响,使用redux middleware更新accessToken和到期日期。您的用例非常适合它。操作应该反映用户交互,而refreshToken不是。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33696250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档