Uruchamianie i testowanie funkcji platformy Azure w środowisku lokalnym
W poprzednim ćwiczeniu utworzono projekt funkcji platformy Azure przy użyciu archetypu narzędzia Maven dla platformy Azure. Następnym zadaniem jest skompilowanie funkcji i uruchomienie jej lokalnie w celu sprawdzenia, czy działa.
W tej lekcji dowiesz się więcej o narzędziach Azure Functions Core Tools, które ułatwiają uruchamianie i testowanie funkcji lokalnie. Dowiesz się również, jak otworzyć port HTTP na potrzeby testowania, jak uruchomić funkcję w usłudze Cloud Shell i jak przetestować funkcję w przeglądarce internetowej.
Informacje o narzędziach Azure Functions Core Tools
Azure Functions Core Tools to zestaw narzędzi do kompilowania i testowania funkcji platformy Azure w środowisku lokalnym przy użyciu emulatora terminalu lub wiersza polecenia. Chociaż tworzone funkcje platformy Azure są uruchomione w środowisku lokalnym, mogą podczas testowania uzyskiwać dostęp do działających usług platformy Azure. Po zakończeniu testowania i gotowości funkcji do opublikowania możesz wdrożyć aplikację funkcji w subskrypcji platformy Azure.
Obecnie dostępne są trzy wersje narzędzi Azure Functions Core Tools. Jednak zgodnie z ogólną zasadą, chyba że masz konkretną potrzebę używania starszej wersji, zawsze należy używać najnowszej wersji podczas opracowywania funkcji na potrzeby wdrażania na platformie Azure. W tym module użyjesz usługi Azure Cloud Shell w piaskownicy platformy Learn, która ma najnowszą wersję narzędzi Azure Functions Core Tools.
Uwaga
Jeśli używasz swojego osobistego konta platformy Azure, a nie usługi Cloud Shell w piaskownicy witryny Learn, zapoznaj się z artykułem Korzystanie z narzędzi Azure Functions Core Tools, który zawiera opisy, wymagania i instrukcje instalacji różnych wersji narzędzi Azure Functions Core Tools.
Konfigurowanie środowiska usługi Cloud Shell na potrzeby testowania
Podczas testowania aplikacji internetowej działającej w usłudze Cloud Shell masz dwa różne sposoby testowania aplikacji:
Za pomocą usługi Cloud Shell można otworzyć port zewnętrzny do testowania, który kieruje żądania HTTP do portu localhost wystąpienia usługi Cloud Shell:
Aby otworzyć port 7071 z usługi Cloud Shell, użyj następującego polecenia cURL:
curl -X POST http://localhost:8888/openPort/7071
Po zakończeniu testowania użyj następującego polecenia cURL, aby zamknąć port:
curl -X POST http://localhost:8888/closePort/7071
Możesz otworzyć wiele wystąpień usługi Cloud Shell, aby przetestować aplikację lokalnie:
Aplikacja będzie uruchomiona w jednym wystąpieniu.
Drugie wystąpienie będzie używane do testowania aplikacji przy użyciu narzędzia cURL.
W następnym ćwiczeniu użyjesz pierwszej metody, aby otworzyć port.
Uruchamianie funkcji w usłudze Cloud Shell
Po otwarciu portu na potrzeby testowania następnym zadaniem jest skompilowanie i wykonanie funkcji. Aby to zrobić, wykonaj następujące kroki:
W usłudze Cloud Shell zmień katalog na folder główny projektu.
Aby skompilować aplikację, użyj następującego polecenia narzędzia Maven:
mvn clean package
Aby uruchomić aplikację, użyj następującego polecenia narzędzia Maven:
mvn azure-functions:run
Gdy narzędzie Maven przygotowuje środowisko uruchomieniowe dla funkcji, zostanie wyświetlone logo narzędzi Azure Functions Core Tools:
Po zakończeniu testowania użyj polecenia CTRL+C z usługi Azure Cloud Shell, aby zatrzymać serwer.
Testowanie funkcji przy użyciu żądań HTTP
W tym module użyjesz pojedynczego wystąpienia usługi Cloud Shell. W związku z tym należy przetestować aplikację, otwierając nową kartę w przeglądarce internetowej. Na pasku adresu przeglądarki wprowadź adres URL podobny do następującego przykładu:
https://gateway.westus.console.azure.com/n/cc-12345678/cc-12345678/proxy/7071/api/HttpExample?name=Bob
Jeśli jednak używasz wielu wystąpień usługi Cloud Shell, możesz użyć następującego polecenia cURL, aby przetestować aplikację z oddzielnego wystąpienia powłoki:
curl http://localhost:7071/api/HttpExample?name=Bob
W następnym ćwiczeniu użyjesz informacji poznanych w tej lekcji. Otwierasz port testowy, uruchamiasz funkcję w usłudze Cloud Shell i określasz adres URL, którego chcesz użyć, aby przetestować funkcję w przeglądarce internetowej.