静默续订后未请求IdentityServer userinfo端点

时间:2018-09-06 09:26:02

标签: javascript reactjs redux identityserver4 oidc-client-js

我们当前面临的问题是,静默续约在30分钟后将无法使用。我们能够确定IS4缺少SubjectId。

在Chrome浏览器的“网络”标签中查找客户端请求时,可以看到以下顺序:

  1. 身份验证请求
  2. 沉默的续订请求
  3. 用户信息请求

network requests

在下一个身份验证请求之前,缺少第三步,我猜是由于该主题ID。

我们的访问令牌寿命为1小时,身份令牌寿命为5分钟。为了进行测试,我们将静默更新设置为每4分钟触发一次。 我们将oidc-client-js@1.4.1与redux-oidc库结合使用。

在客户端/服务器端的配置中,我们是否忘记了什么?

非常感谢。

2 个答案:

答案 0 :(得分:0)

我认为您必须侦听UserLoaded事件,因此您将在无提示刷新请求后加载新用户

this._userManager.events.addUserLoaded(args => {
  this._userManager.getUser().then(user => {
    this._user = user;
  });
});

在每次无提示刷新调用后都会调用getUser以获取新用户

答案 1 :(得分:0)

问题不在客户端。用户的cookie在后端过期。
link to github with solution by the creator