Aracılığıyla paylaş


Öğretici: Angular SPA ile kullanıcı verilerini ayıklama

için geçerlidir: Beyaz onay işareti simgesine sahip Yeşil daire. Workforce kiracıları Beyaz onay işareti simgesine sahip Yeşil daire . Dış kiracılar (daha fazla bilgi)

Bu öğretici, Angular tek sayfalı uygulama (SPA) oluşturmayı ve Microsoft kimlik platformunu kullanarak kimlik doğrulaması eklemeyi gösteren serinin son bölümüdür. Bu serinin Bölüm 2'sinde bir Angular SPA oluşturdunuz ve iş gücü kiracınız için kimlik doğrulaması yapmaya hazırladınız.

Bu öğreticide,

  • Angular uygulamanıza veri işleme ekleyin.
  • Uygulamayı test edin ve kullanıcı verilerini ayıklayın.

Önkoşullar

Uygulama kullanıcı arabiriminde görüntülenecek verileri ayıklama

Angular uygulamanızı Microsoft Graph API'siyle etkileşim kuracak şekilde yapılandırmak için aşağıdaki adımları tamamlayın:

  1. src/app/profile/profile.component.ts dosyasını açın ve içeriğini aşağıdaki kod parçacığıyla değiştirin:

    // 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')!;
      }
    }
    

    Angular'daki ProfileComponent, Microsoft Graph'ın /me uç noktasından kullanıcı profili verilerini getirir. ProfileType ve displayNamegibi özellikleri yapılandırmak için mail tanımlar. ngOnInitiçinde, HttpClient kullanarak bir GET isteği gönderir ve yanıtı profile'e atar. Ayrıca localStorage'e tokenExpiration'dan belirtecin son kullanma süresini alır ve depolar.

  2. src/app/profile/profile.component.html dosyasını açın ve içeriğini aşağıdaki kod parçacığıyla değiştirin:

    <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>
    

    Bu kod, profile nesnesinden özellikleri bağlamak için Angular'ın ilişkilendirme söz dizimini kullanarak kullanıcı profili bilgilerini görüntüleyen bir HTML şablonu tanımlar (örneğin, businessPhones, displayName, jobTitle). Ayrıca tokenExpiration değerini gösterir ve sayfayı yenilemenin süresi dolana kadar önbelleğe alınmış erişim belirtecini kullanacağını ve ardından yeni bir belirteç isteneceğini belirten bir not içerir.

Uygulamayı test edin

Uygulamanın çalışması için Angular uygulamasını çalıştırmanız ve Microsoft Entra kiracınızla kimlik doğrulaması yapmak ve kullanıcı verilerini ayıklamak için oturum açmanız gerekir.

Uygulamayı test etmek için aşağıdaki adımları tamamlayın:

  1. Terminalde aşağıdaki komutu yürüterek Angular uygulamasını çalıştırın:

    ng serve --open
    
  2. Microsoft Entra kiracınızla kimlik doğrulaması yapmak için Oturum aç düğmesini seçin.

  3. Oturum açtıktan sonra Profili sayfasına gitmek için Profili Görüntüle bağlantısını seçin. Kullanıcının adı, e-postası, iş unvanı ve diğer ayrıntılar da dahil olmak üzere kullanıcı profili bilgilerinin görüntülendiğini doğrulayın.

    API çağrısının sonuçlarını gösteren JavaScript Uygulamasının ekran görüntüsü.

  4. Uygulamadan çıkış yapmak için Çıkış yap düğmesini seçin.

Sonraki adımlar

Web API'sinin nasıl der kullanılacağına ilişkin aşağıdaki öğretici serisini deneyerek Microsoft kimlik platformunu kullanmayı öğrenin.