Javascript 通过oidc客户端获得“登录回拨”;在存储器中找不到用户“;
我正在使用带angular 4应用程序的oidc客户端1.3.0。初始身份验证(SignInDirect)工作正常。但是,当令牌过期时,它将加载silent-renew.js并尝试执行以下操作:Javascript 通过oidc客户端获得“登录回拨”;在存储器中找不到用户“;,javascript,angular,oidc-client-js,Javascript,Angular,Oidc Client Js,我正在使用带angular 4应用程序的oidc客户端1.3.0。初始身份验证(SignInDirect)工作正常。但是,当令牌过期时,它将加载silent-renew.js并尝试执行以下操作: Oidc.UserManager().signinSilentCallback(); 它会收到一个错误(或某个级别的消息)说“在存储器中找不到用户”。因此,用户不会得到新令牌信息的更新 当我进入oidc客户机时,我可以看到它以Promise.resolve()结束,我希望它将发送给用户 从UserMa
Oidc.UserManager().signinSilentCallback();
它会收到一个错误(或某个级别的消息)说“在存储器中找不到用户”。因此,用户不会得到新令牌信息的更新
当我进入oidc客户机时,我可以看到它以Promise.resolve()结束,我希望它将发送给用户
从UserManager.js,这里的用户返回为未定义:
signinSilentCallback(url) {
Log.debug("UserManager.signinSilentCallback");
return this._signinCallback(url, this._iframeNavigator).then(user => {
if (user) {
if (user.profile && user.profile.sub) {
Log.info("signinSilentCallback successful, signed in sub: ", user.profile.sub);
}
else {
Log.info("signinSilentCallback successful");
}
}
return user;
});
从IFrameNavigator.js解析承诺:
callback(url) {
Log.debug("IFrameNavigator.callback");
try {
IFrameWindow.notifyParent(url);
return Promise.resolve();
}
catch (e) {
return Promise.reject(e);
}
}
如果您已经在angular4应用程序(或者,我不挑剔,其他一些应用程序)中实现了这一点,请帮助我:)看起来我是在转移视线,因为这里确实没有问题。我遇到的问题是更新授权标头以包含更新的令牌。一旦我得到了,一切都很愉快。请详细解释