Udostępnij za pośrednictwem


Samouczek: tworzenie aplikacji Vanilla JavaScript SPA na potrzeby uwierzytelniania w dzierżawie zewnętrznej

Ten samouczek jest częścią 2 serii, która demonstruje tworzenie aplikacji jednostronicowej (SPA) Vanilla JavaScript (JS) i przygotowanie jej do uwierzytelniania przy użyciu centrum administracyjnego firmy Microsoft Entra. W części 1 tej serii zarejestrowano aplikację i skonfigurowano przepływy użytkowników w dzierżawie zewnętrznej. W tym samouczku pokazano, jak utworzyć vanilla JavaScript SPA przy użyciu i npm utworzyć pliki potrzebne do uwierzytelniania i autoryzacji.

W tym samouczku;

  • Tworzenie projektu Vanilla JavaScript w programie Visual Studio Code
  • Instalowanie wymaganych pakietów
  • Dodawanie kodu do server.js w celu utworzenia serwera

Wymagania wstępne

Tworzenie nowego projektu Vanilla JavaScript i instalowanie zależności

  1. Otwórz program Visual Studio Code, wybierz pozycję Plik>Otwórz folder.... Przejdź do i wybierz lokalizację, w której chcesz utworzyć projekt.

  2. Otwórz nowy terminal, wybierając pozycję Terminal>Nowy terminal.

  3. Uruchom następujące polecenie, aby utworzyć nowy projekt Vanilla JavaScript:

    npm init -y
    
  4. Utwórz dodatkowe foldery i pliki, aby uzyskać następującą strukturę projektu:

        └── public
            └── authConfig.js
            └── authPopup.js
            └── authRedirect.js
            └── claimUtils.js
            └── index.html
            └── signout.html
            └── styles.css
            └── ui.js    
        └── server.js
    

Instalowanie zależności aplikacji

  1. W terminalu uruchom następujące polecenie, aby zainstalować wymagane zależności dla projektu:

    npm install express morgan @azure/msal-browser
    

Edytowanie pliku server.js

Express to platforma aplikacji internetowej dla Node.js. Służy do tworzenia serwera, który hostuje aplikację. Morgan to oprogramowanie pośredniczące, które rejestruje żądania HTTP do konsoli. Plik serwera jest używany do hostowania tych zależności i zawiera trasy dla aplikacji. Uwierzytelnianie i autoryzacja są obsługiwane przez bibliotekę uwierzytelniania firmy Microsoft dla języka JavaScript (MSAL.js).

  1. Dodaj następujący fragment kodu do pliku server.js :

    const express = require('express');
    const morgan = require('morgan');
    const path = require('path');
    
    const DEFAULT_PORT = process.env.PORT || 3000;
    
    // initialize express.
    const app = express();
    
    // Configure morgan module to log all requests.
    app.use(morgan('dev'));
    
    // serve public assets.
    app.use(express.static('public'));
    
    // serve msal-browser module
    app.use(express.static(path.join(__dirname, "node_modules/@azure/msal-browser/lib")));
    
    // set up a route for signout.html
    app.get('/signout', (req, res) => {
        res.sendFile(path.join(__dirname + '/public/signout.html'));
    });
    
    // set up a route for redirect.html
    app.get('/redirect', (req, res) => {
        res.sendFile(path.join(__dirname + '/public/redirect.html'));
    });
    
    // set up a route for index.html
    app.get('/', (req, res) => {
        res.sendFile(path.join(__dirname + '/index.html'));
    });
    
    app.listen(DEFAULT_PORT, () => {
        console.log(`Sample app listening on port ${DEFAULT_PORT}!`);
    });
    
    

W tym kodzie zmienna aplikacji jest inicjowana za pomocą modułu ekspresowego, a wyrażenie jest używane do obsługi zasobów publicznych. Przeglądarka MSAL jest obsługiwana jako element zawartości statycznej i służy do inicjowania przepływu uwierzytelniania.

Następny krok