Ćwiczenie — tworzenie aplikacji usługi Azure Functions i refaktoryzacja kodu

Ukończone

W tym ćwiczeniu utworzysz bezserwerową aplikację usługi Azure Functions, która uruchamia interfejsy API zamiast aplikacji Express. Następnie należy przeprowadzić migrację logiki aplikacji z aplikacji Node.js Express do aplikacji usługi Functions. Nie musisz ponownie pisać kodu. Aby przejść, potrzebujesz tylko kilku małych zmian w kodzie.

Tworzenie nowej aplikacji usługi Azure Functions

Upewnij się, że masz zainstalowane rozszerzenie programu Visual Studio Code dla usługi Azure Functions .

  1. W programie Visual Studio Code naciśnij klawisz F1, aby otworzyć paletę poleceń.

  2. Wpisz i wybierz pozycję Azure Functions: Utwórz nowy projekt.

    Screenshot of Visual Studio Code creating a new function app.

  3. Wybierz katalog główny repozytorium jako lokalizację nowego projektu.

  4. Po wyświetleniu monitu wprowadź następujące wartości.

    Nazwa/nazwisko Wartość
    Język TypeScript
    Wybieranie modelu programowania TypeScript Model V4
    Template Wyzwalacz HTTP
    Nazwisko getVacations

Aplikacja usługi Functions jest teraz tworzona w celu obsługi punktów końcowych interfejsu API aplikacji. W następnej lekcji utworzysz funkcje, które zawierają listę, dodawanie, aktualizowanie i usuwanie urlopów.

Uwaga

Aplikacja usługi Functions została utworzona w folderze functions , który oddziela ją od aplikacji Angular. Możesz zdecydować, jak strukturę aplikacji, ale w celach szkoleniowych ułatwia wyświetlanie obu aplikacji w jednym miejscu.

Kopiowanie i refaktoryzacja kodu procedury obsługi tras

Cała logika Node.js Express zwracająca dane znajduje się w folderze serwer/usługi . Możesz skopiować ten kod z aplikacji Node.js Express do aplikacji usługi Functions, a następnie wykonać niewielką refaktoryzację, aby kod działał z usługami Functions zamiast Node.js Express.

W poniższej tabeli wymieniono główne różnice między aplikacją Node.js Express a aplikacją usługi Functions:

Składnik Node.js Express Funkcje
Zaimportowany pakiet npm do obsługi aplikacji express @azure/functions
Obiekty żądań i odpowiedzi req i res request i context

Najpierw refaktoryzujesz kod w celu zaimportowania odpowiedniego pakietu npm. Następnie refaktoryzujesz, aby obsłużyć różnice między sposobem przekazywania obiektów żądania i odpowiedzi przez usługę Express i Functions.

Kopiowanie istniejącego kodu z projektu Express

W programie Visual Studio Code skopiuj następujące podfoldery z folderu serwera w aplikacji Express i wklej je do folderu functions/ folder:

  • dane
  • modele
  • services

Nie musisz kopiować folderu routes , ponieważ zamierzasz utworzyć nowe funkcje dla każdej trasy w aplikacji usługi Azure Functions.

Przejdź do następnej lekcji, aby utworzyć funkcje i refaktoryzować punkty końcowe i trasy.