Я следую курсу множественного числа Защита приложений Angular с помощью OpenID Connect и OAuth2 для запуска и работы с oidc-client в Angular, но я столкнулся с проблемой с токеном тихого обновления, который выдает
SilentRenewService._tokenExpiring: ошибка от signinSilent: время ожидания окна кадра истекло t.error
на сервере стоит клиент
new Client
{
ClientId = "spa-client",
ClientName = "Projects SPA",
AllowedGrantTypes = GrantTypes.Implicit,
AllowAccessTokensViaBrowser = true,
RequireConsent = false,
RedirectUris = {
"http://localhost:4200/assets/oidc-login-redirect.html",
"http://localhost:4200/assets/silent-redirect.html"
},
PostLogoutRedirectUris = { "http://localhost:4200/?postLogout=true" },
AllowedCorsOrigins = { "http://localhost:4200/" },
AllowedScopes =
{
IdentityServerConstants.StandardScopes.OpenId,
IdentityServerConstants.StandardScopes.Profile,
"projects-api"
},
IdentityTokenLifetime=30,
AccessTokenLifetime=30
}
и конфиг на клиенте такой:
var config = {
authority: 'http://localhost:4242/',
client_id: 'spa-client',
redirect_uri: 'http://localhost:4200/assets/oidc-login-redirect.html',
scope: 'openid projects-api profile',
response_type: 'id_token token',
post_logout_redirect_uri: 'http://localhost:4200/?postLogout=true'
userStore: new WebStorageStateStore({ store: window.localStorage }),
automaticSilentRenew: true,
silent_redirect_uri: 'http://localhost:4200/assets/silent-redirect.html'
};
Я нашел предложенное решение от "Sohan" для аналогичной проблемы здесь (это специально для Azure AD). Это затем вызывает
Время ожидания окна кадра истекло
Или предложение в этот пост добавить ссылки для молчаливого redirect.html в мой файл angular.json, это не помогло
Я использую Angular 7 и Chrome Version 73.0.3683.86 (Official Build) (64-bit)