Ćwiczenie — tworzenie funkcji platformy Azure wyzwalanej przez element webhook

Ukończone

W tym pierwszym ćwiczeniu utworzysz kod, aby przeanalizować komunikaty o zdarzeniach typu wiki usługi GitHub w usłudze Azure Functions. Skonfigurujesz funkcję do uruchomienia, gdy zostanie odebrana wiadomość webhook.

Utwórz aplikację funkcjonalną

  1. Zaloguj się do witryny Azure Portal przy użyciu konta MS Learn.

  2. Wybierz pozycję Utwórz zasób. Zostanie wyświetlone okienko Tworzenie zasobu.

  3. W okienku menu po lewej stronie, w obszarze Kategorie, wybierz pozycję Compute, a następnie w polu wyszukiwania Search services and marketplace wyszukaj i wybierz Function App. Na ekranie pojawi się panel Function App.

  4. Wybierz pozycję Utwórz. Zostanie wyświetlone okienko Tworzenie aplikacji funkcji.

  5. Na karcie Podstawowe wprowadź następujące wartości dla każdego ustawienia.

    Notatka

    Nazwa aplikacji funkcji musi być unikatowa. Zalecamy użycie czegoś w rodzaju <twojej nazwy lub inicjałów>triggerapp. Użyj tej nazwy wszędzie tam, gdzie zobaczysz <nazwa Twojej aplikacji funkcji> w tym ćwiczeniu.

    Ustawienie Wartość
    Szczegóły Projektu
    Subskrypcja Subskrypcja Concierge
    Grupa zasobów Z listy rozwijanej wybierz grupę zasobów piaskownicy, [nazwa grupy zasobów piaskownicy].
    Szczegóły wystąpienia
    Nazwa aplikacji funkcjonalnej <nazwa aplikacji funkcji>
    Opublikuj Kod
    Stos środowiska uruchomieniowego Node.js
    Wersja Zaakceptuj wartość domyślną
    Region Wybierz najbliższą lokalizację, która jest również jednym z dozwolonych regionów piaskownicy .
    system operacyjny
    System operacyjny Windows
    Hosting
    Opcje hostingu i plany Zużycie (bezserwerowe)

    Bezpłatna piaskownica umożliwia tworzenie zasobów w wybranych regionach globalnych platformy Azure. Wybierz region z poniższej listy podczas tworzenia zasobów:

    • Zachodnie stany USA 2
    • Południowo-środkowe stany USA
    • Środkowe stany USA
    • Wschodnie stany USA
    • Europa Zachodnia
    • Azja Południowo-Wschodnia
    • Japonia Wschodnia
    • Brazylia Południowa
    • Australia Południowo-Wschodnia
    • Indie Środkowe
  6. Wybierz pozycję Dalej: Przechowywanie, aby otworzyć kartę Przechowywanie. Wprowadź następujące wartości dla każdego ustawienia.

    Ustawienie Wartość
    Magazynowanie
    Konto magazynu (Nowy) i zaakceptuj nazwę domyślną.
  7. Wybierz pozycję Przejrzyj i utwórz.

  8. Platforma Azure weryfikuje wpisy. Po zweryfikowaniu wybierz Utwórz.

Tworzenie funkcji wyzwalanej przez element webhook

  1. Po zakończeniu wdrażania wybierz pozycję Przejdź do zasobu. Zostanie wyświetlone okienko Przegląd dla Twojej aplikacji funkcjonalnej .

  2. W obszarze Functionswybierz pozycję Utwórz w Azure Portal.

  3. Pojawi się okno tworzenie funkcji.

  4. W obszarze Wybierz szablonwybierz wyzwalacz HTTP, a następnie wybierz Utwórz. Okienko HttpTrigger1 zostanie wyświetlone dla funkcjiz wyświetlonymi elementami podstawowymi dla nowego wyzwalacza.

  5. W lewym panelu menu, pod Developer, wybierz Code + Test. Okienko Kod i testowanie pojawi się dla Twojej funkcji , wyświetlając plik JavaScript utworzony na podstawie szablonu. Powinien on wyglądać podobnie do poniższego kodu.

    module.exports = async function (context, req) {
        context.log('JavaScript HTTP trigger function processed a request.');
    
        const name = (req.query.name || (req.body && req.body.name));
        const responseMessage = name
            ? "Hello, " + name + ". This HTTP triggered function executed successfully."
            : "This HTTP triggered function executed successfully. Pass a name in the query string or in the request body for a personalized response.";
    
        context.res = {
            // status: 200, /* Defaults to 200 */
            body: responseMessage
        };
    }
    

    Plik index.js jest funkcją JavaScript wygenerowaną przez portal. Żądanie odczytuje nazwę przekazaną jako ciąg zapytania lub jako część treści żądania i odpowiada za pomocą komunikatu "Hello".

  6. Powyżej kodu znajduje się ścieżka z listą rozwijaną z wyświetloną nazwą pliku. Z listy rozwijanej wybierz pozycję function.json. Zostanie wyświetlony plik JSON utworzony przez szablon. Powinien on wyglądać podobnie do poniższego kodu.

    {
        "bindings": [
            {
                "authLevel": "function",
                "type": "httpTrigger",
                "direction": "in",
                "name": "req",
                "methods": [
                    "get",
                    "post"
                ]
            },
            {
                "type": "http",
                "direction": "out",
                "name": "res"
            }
        ]
    }
    

    Powiązania JSON określają, że funkcja jest wyzwalana przez żądania HTTP GET i POST skierowane do adresu URL aplikacji funkcji.

Testowanie wyzwalania funkcji

  1. Na górnym pasku menu wybierz pozycję Pobierz adres URL funkcji.

  2. W oknie dialogowym Pobierz adres URL funkcji, na liście rozwijanej klucza, pod kluczem funkcji , wybierz domyślny . W polu adresu URL wybierz ikonę Kopiuj do schowka. Adres URL będzie wyglądać mniej więcej tak:

    https://<your-functionapp-name>.azurewebsites.net/api/HttpTrigger1?code=aUjXIpqdJ0ZHPQuB0SzFegxGJu0nAXmsQBnmkCpJ6RYxleRaoxJ8cQ==
    
  3. Wklej ten adres URL w przeglądarce, a na końcu adresu URL dołącz parametr ciągu zapytania: &name=<yourname>, na przykład &name=Dick i Jane.

  4. Aby uruchomić żądanie, naciśnij Enter. Odpowiedź zwrócona przez funkcję zostanie wyświetlona w przeglądarce. Będzie to wyglądać mniej więcej tak:

    Hello Dick and Jane. This HTTP triggered function executed successfully.
    

Gratulacje! Masz teraz funkcję, którą można wyzwolić za pomocą adresu URL.