У меня есть угловое приложение (angular 6), в котором реализована keycloakAuthentication, если пользователь не аутентифицирован, угловое приложение перенаправляет пользователя на эту служебную страницу (третье лицо), когда пользователь успешно прошел аутентификацию, он перенаправляет на наш угловой веб-сайт.
Теперь я сталкиваюсь с проблемой протокола HTTP, если пользовательский тип http://portal.cloud.com будет перенаправлен на страницу keycloakAuthentication, но URL-адрес перенаправления (http://portal.cloud.com) недействителен, поскольку он аутентифицирует только URL-адрес https, как я могу изменить URL в этом случае означает, что если пользователь типа http://portal.cloud.com приложение автоматически преобразует его в https://portal.cloud.com и отправит его на страницу keycloakAuthentication.
Я попробовал какое-то решение, например, реализованное authguard, как показано ниже:
import {Injectable, isDevMode} from '@angular/core';
import {CanActivate} from '@angular/router';
@Injectable()
export class IsSecureGuard implements CanActivate {
canActivate(): boolean {
if ((isDevMode()) && (location.protocol !== 'https:')) {
location.href = 'https:' + window.location.href.substring(window.location.protocol.length);
return false;
}
return true;
}
}
но он не работает должным образом, пожалуйста, предложите какое-нибудь решение для изменения URL при загрузке.