Ćwiczenie — tworzenie projektu funkcji
Firma Tailwind Traders planowała utworzenie tradycyjnego interfejsu API, ale zręcznie zauważyłeś, że bezserwerowe rozwiązanie jest idealne dla interfejsów API, które doświadczają nieoczekiwanych skoków ruchu. Można je zastosować również bez naruszania istniejącej bazy kodu. Idzie Ci świetnie. Masz przed sobą długą karierę w internetowej sprzedaży sprzętu.
Teraz czas, aby przełożyć te wzniosłe słowa na praktyczne działanie. Teraz musisz utworzyć nowy projekt w usłudze Azure Functions, aby był interfejsem API HTTP dla aplikacji Products Manager . Oznacza to, że utworzenie projektu usługi Azure Functions wraz ze wszystkimi punktami końcowymi, które aplikacja Products Manager będzie musiała mieć możliwość tworzenia, odczytywania, aktualizowania i usuwania produktów.
Tworzenie projektu z istniejącym kodem
To ćwiczenie zapewnia częściowo ukończoną bazę kodu. Podczas tworzenia nowej aplikacji usługi Azure Functions należy pozostawić istniejący package.json
plik. Plik package.json
jest plikiem zawierającym zależności projektu. Jeśli go zastąpisz, utracisz istniejące zależności.
Ten przepływ pracy został wybrany, aby dać ci przewagę nad projektem. Możesz skoncentrować się na kodzie bezserwerowym i kodzie integracji bazy danych, zamiast konfigurować projekt od podstaw.
Tworzenie nowego projektu usługi Azure Functions
W programie Visual Studio Code otwórz paletę poleceń.
Wprowadź polecenie Create new project (Utwórz nowy projekt).
Wybierz pozycję Azure Functions: Utwórz nowy projekt.
Wybierz folder api.
Po wyświetleniu monitu wprowadź następujące wartości. Po wyświetleniu monitu nie należy zastępować pliku package.json .
Nazwa/nazwisko Wartość Język TypeScript Wybieranie modelu programowania TypeScript Model V4 Template Wyzwalacz HTTP Nazwisko GetProducts Zastąpić package.json
Nie. Po wyświetleniu monitu
.gitignore
o zastąpienie pliku lubpackage.json
upewnij się, że wybrano pozycję Nie.Folder functions w pliku api/src zawiera teraz nową aplikację usługi Azure Functions z funkcją w folderze api/src/functions/GetProducts.ts. Dodano również kilka innych wymaganych plików projektu, w tym
host.json
ilocal.settings.json
.W pliku dodaj tę instrukcję
src/index.ts
import.import { GetProducts } from "./functions/GetProducts";
W pliku
src/index.ts
dodaj procedurę obsługi dla definicji trasy.app.http('GetProducts', { methods: ['GET', 'POST'], authLevel: 'anonymous', handler: GetProducts });
Przeglądanie funkcji tworzenia, aktualizowania i usuwania
Funkcje Create, Update i Delete zostały już utworzone. Zostały one utworzone przy użyciu tego samego procesu, który został użyty do utworzenia funkcji GetProducts i zawierają już kod dostępu do bazy danych.
- Zwróć uwagę, że projekt interfejsu API zawiera już funkcje CreateProduct, DeleteProduct i UpdateProduct.
Uruchamianie projektu usługi Azure Functions
Projekty usługi Azure Functions można uruchamiać i debugować lokalnie z poziomu programu Visual Studio Code.
Otwórz paletę poleceń.
Wprowadź pozycję debugowania.
Wybierz pozycję Debuguj: wybierz i rozpocznij debugowanie.
Wybierz polecenie Attach to Node Functions (Dołącz do funkcji węzłów).
Zostanie uruchomiony projekt usługi Azure Functions. W terminalu zostanie wyświetlony adres URL aplikacji funkcji.
Program Visual Studio Code generuje następujący błąd: "Nie można odczytać właściwości "endpoint" niezdefiniowanej". Nie przejmuj się. Dzieje się tak, ponieważ nie skonfigurowaliśmy jeszcze parametry połączenia bazy danych. Zwróć uwagę, że cztery punkty końcowe są wymienione powyżej tego błędu i że w przypadku wybrania któregokolwiek z nich wystąpi ten sam błąd.