Ćwiczenie — tworzenie aplikacji usługi Azure Functions i refaktoryzacja kodu
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 .
W programie Visual Studio Code naciśnij klawisz F1, aby otworzyć paletę poleceń.
Wpisz i wybierz pozycję Azure Functions: Utwórz nowy projekt.
Wybierz katalog główny repozytorium jako lokalizację nowego projektu.
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.