Рубрики
Без рубрики

Упрощенный способ выполнения аутентификации в угловой маршрутизации

В этой статье мы обсудим интуитивно понятный способ реализации аутентификации в угловом приложении с использованием @ rxweb / ingular-маршрутизатор

Автор оригинала: Ushmi Dave.

В этой статье мы обсудим интуитивный способ реализации аутентификации в угловом приложении с использованием @ rxweb/ingular-marrit

@ RxWeb/Angular-Router – это один пакет для управления маршрутами, людварами, доступом, подлинностью и шифрованием URL в разделе

Для установки и установки @ rxweb/ingular-маршрутизатор в приложении Установите пакет и объявляю RXROUTINGModule В разрезе импорта корневого модуля. Подробную информацию о базе и настройке см. Представляем @ RXWeb/Angular-маршрутизатор: обрабатывать угловую маршрутизацию лучше

@ RXWeb/Angular-маршрутизатор обеспечивает аутентификацию глобального уровня и использование декоратора @Routermodule.

Параметр аутентификации будет предоставлен глобальный класс AUTHRESOLVER, который будет разрешать объект пользователя всякий раз, когда пользователь войдет после того, как пользовательский объект будет доступен для компонента всякий раз, когда навигация по маршруту имеет место, даже если страница обновлена, нет необходимости хранить это в местном хранении, который обеспечивает лучшую безопасность.

Давайте начнем с добавления параметра аутентификации, начните с создания класса с именем authresolver, который будет разрешать объект пользователя, сделав запрос на сервер дальше, он предоставит объекту пользователя к компоненту всякий раз, когда навигация имеет место.

Resolveauth разрешит объект auth, в зависимости от вашего пользовательского кода, здесь мы принимаем пример, где Auth решается из файла JSON

После создания authresolver.ts выглядит так:

import { Injectable } from "@angular/core";
import { IAuthResolver } from "@rxweb/angular-router";
import { HttpClient } from "@angular/common/http";
import { ApplicationObjects } from "./application-objects";

@Injectable({
  providedIn: "root"
})
export class AuthResolver implements IAuthResolver {
  constructor(private http: HttpClient) {}

  resolveAuth(): Promise<{ [key: string]: any }> | { [key: string]: any } {
    var promise = new Promise<{ [key: string]: any }>((resolve, reject) => {
      // Your custom logic here
      if (ApplicationObjects.user == undefined)
        this.http.get("assets/json/user.json").subscribe(response => {
          ApplicationObjects.user = response;
          resolve(response);
        });
    });
    return promise;
  }
}
 

Далее добавляя его в параметр аутентификации @Routermodule, который мы создали ранее:

@routerModule({
    authentication: AuthResolver,
    authorization :,
    middlewares : [] 
  })
@NgModule({...})
export class AppModule { }

Вот рабочий пример резолюции аутентификации

Маршрутизатор-аутентификация

В этой статье мы охватываем базовый проход вместе с преимуществами пакета @ RXWeb/угловой маршрутизатор вместе с централизованной аутентификацией. @ rxweb/ingular-marriter Также обеспечивает глобально доступную авторизацию и средние годы, которые используются для разрешения объекта авторизации и выполнения действий перед маршрутной навигацией.