Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применяется к:
Клиенты рабочей силы
Внешние клиенты (дополнительные сведения)
В этом руководстве представлена окончательная часть серии, демонстрирующая создание одностраничного приложения Angular (SPA) и добавление проверки подлинности с помощью платформы удостоверений Майкрософт. В части 2 этой сериивы создали Angular SPA и подготовили его для аутентификации с арендатором вашей рабочей группы.
В этом руководстве описано, как вы
- Добавьте обработку данных в приложение Angular.
- Протестируйте приложение и извлеките пользовательские данные.
Необходимые условия
Извлечение данных для просмотра в пользовательском интерфейсе приложения
Чтобы настроить приложение Angular для взаимодействия с API Microsoft Graph, выполните следующие действия.
Откройте файл
src/app/profile/profile.component.tsи замените содержимое следующим фрагментом кода:// Required for Angular import { Component, OnInit } from '@angular/core'; // Required for the HTTP GET request to Graph import { HttpClient } from '@angular/common/http'; type ProfileType = { businessPhones?: string, displayName?: string, givenName?: string, jobTitle?: string, mail?: string, mobilePhone?: string, officeLocation?: string, preferredLanguage?: string, surname?: string, userPrincipalName?: string, id?: string } @Component({ selector: 'app-profile', templateUrl: './profile.component.html' }) export class ProfileComponent implements OnInit { profile!: ProfileType; tokenExpiration!: string; constructor( private http: HttpClient ) { } // When the page loads, perform an HTTP GET request from the Graph /me endpoint ngOnInit() { this.http.get('https://graph.microsoft.com/v1.0/me') .subscribe(profile => { this.profile = profile; }); this.tokenExpiration = localStorage.getItem('tokenExpiration')!; } }ProfileComponentв Angular извлекает данные профиля пользователя из конечной точки/meMicrosoft Graph. Он определяетProfileTypeдля структурирования свойств, таких какdisplayNameиmail. ВngOnInitиспользуетсяHttpClientдля отправки запроса GET, назначая ответprofile. Он также извлекает и сохраняет время истечения срока действия токена изlocalStorageвtokenExpiration.Откройте файл
src/app/profile/profile.component.htmlи замените содержимое следующим фрагментом кода:<div class="profile"> <p><strong>Business Phones:</strong> {{profile?.businessPhones}}</p> <p><strong>Display Name:</strong> {{profile?.displayName}}</p> <p><strong>Given Name:</strong> {{profile?.givenName}}</p> <p><strong>Job Title:</strong> {{profile?.jobTitle}}</p> <p><strong>Mail:</strong> {{profile?.mail}}</p> <p><strong>Mobile Phone:</strong> {{profile?.mobilePhone}}</p> <p><strong>Office Location:</strong> {{profile?.officeLocation}}</p> <p><strong>Preferred Language:</strong> {{profile?.preferredLanguage}}</p> <p><strong>Surname:</strong> {{profile?.surname}}</p> <p><strong>User Principal Name:</strong> {{profile?.userPrincipalName}}</p> <p><strong>Profile Id:</strong> {{profile?.id}}</p> <br><br> <p><strong>Token Expiration:</strong> {{tokenExpiration}}</p> <br><br> <p>Refreshing this page will continue to use the cached access token until it nears expiration, at which point a new access token will be requested.</p> </div>Этот код определяет html-шаблон, который отображает сведения о профиле пользователя, используя синтаксис интерполяции Angular для привязки свойств из объекта
profile(например,businessPhones,displayName,jobTitle). Он также отображает значениеtokenExpirationи содержит примечание о том, что обновление страницы будет использовать кэшированный маркер доступа до истечения срока действия, после чего будет запрошен новый маркер.
Тестирование приложения
Чтобы приложение работало, необходимо запустить приложение Angular и войти в систему, чтобы пройти проверку подлинности с помощью клиента Microsoft Entra и извлечь пользовательские данные.
Чтобы протестировать приложение, выполните следующие действия.
Запустите приложение Angular, выполнив следующую команду в терминале:
ng serve --openНажмите кнопку входа, чтобы пройти проверку подлинности с помощью клиента Microsoft Entra.
После входа выберите ссылку Просмотреть профиль, чтобы перейти на страницу Профиля. Убедитесь, что отображаются сведения профиля пользователя, включая имя пользователя, электронную почту, название задания и другие сведения.
Нажмите кнопку выхода, чтобы выйти из приложения.
Дальнейшие действия
Узнайте, как использовать платформу удостоверений Майкрософт, ознакомившись с серией обучающих руководств по созданию веб-API.