Udostępnij za pomocą


Dodawanie komunikatów do kolejki usługi Azure Storage przy użyciu funkcji

W usłudze Azure Functions powiązania danych wejściowych i wyjściowych zapewniają deklaratywną metodę udostępniania danych z usług zewnętrznych na potrzeby kodu. W tym artykule użyjesz powiązania wyjściowego, aby utworzyć komunikat w kolejce, gdy żądanie HTTP wyzwala funkcję. Kontener usługi Azure Storage służy do wyświetlania komunikatów kolejki tworzonych przez funkcję.

Wymagania wstępne

Dodawanie powiązania danych wyjściowych

W tej sekcji użyjesz interfejsu użytkownika portalu, aby dodać powiązanie wyjściowe usługi Azure Queue Storage do funkcji utworzonej w wymaganiach wstępnych. To powiązanie umożliwia napisanie minimalnego kodu w celu utworzenia komunikatu w kolejce. Nie musisz pisać kodu dla takich zadań, jak otwieranie połączenia magazynu, tworzenie kolejki ani pobieranie odwołania do kolejki. Te zadania zostaną wykonane za pomocą środowiska uruchomieniowego usługi Azure Functions i powiązania danych wyjściowych kolejki.

  1. W witrynie Azure Portal wyszukaj i wybierz aplikację funkcji utworzoną w obszarze Tworzenie pierwszej funkcji w witrynie Azure Portal.

  2. W aplikacji funkcji wybierz utworzoną funkcję.

  3. Wybierz pozycję Integracja, a następnie wybierz pozycję + Dodaj dane wyjściowe.

    Zrzut ekranu przedstawiający sposób tworzenia powiązania wyjściowego dla funkcji.

  4. Wybierz typ powiązania usługi Azure Queue Storage i dodaj ustawienia określone w tabeli poniżej tego zrzutu ekranu:

    Zrzut ekranu przedstawiający sposób dodawania powiązania wyjściowego usługi Queue Storage do funkcji w witrynie Azure Portal.

    Ustawienie Sugerowana wartość opis
    Nazwa parametru komunikatu outputQueueItem Nazwa parametru powiązania danych wyjściowych.
    Nazwa kolejki outqueue Nazwa kolejki do nawiązania połączenia z usługą na koncie magazynu.
    Połączenie konta magazynu AzureWebJobsStorage Możesz użyć istniejącego połączenia konta magazynu używanego przez aplikację funkcji lub utworzyć nowe.
  5. Wybierz przycisk OK , aby dodać powiązanie.

Po zdefiniowaniu powiązania danych wyjściowych musisz zaktualizować kod, tak aby stosować powiązanie do dodawania komunikatów do kolejki.

Dodawanie kodu korzystającego z powiązania danych wyjściowych

W tej sekcji dodasz kod służący do zapisywania komunikatu do kolejki wyjściowej. Komunikat zawiera wartość przekazaną do wyzwalacza HTTP w ciągu zapytania. Jeśli na przykład ciąg zapytania zawiera name=Azureciąg , komunikat kolejki to Nazwa przekazana do funkcji: Azure.

  1. W funkcji wybierz pozycję Kod i testowanie , aby wyświetlić kod funkcji w edytorze.

  2. Zaktualizuj kod funkcji zgodnie z językiem funkcji:

    Dodaj parametr outputQueueItem do podpisu metody, jak pokazano w poniższym przykładzie:

    public static async Task<IActionResult> Run(HttpRequest req,
        ICollector<string> outputQueueItem, ILogger log)
    {
        ...
    }
    

    W treści funkcji tuż przed instrukcją dodaj kod, który używa parametru do utworzenia komunikatu return kolejki:

    outputQueueItem.Add("Name passed to the function: " + name);
    
  3. Wybierz Zapisz, aby zapisać zmiany.

Testowanie funkcji

  1. Po zapisaniu zmian kodu wybierz pozycję Testuj.

  2. Upewnij się, że test jest zgodny z tym zrzutem ekranu, a następnie wybierz pozycję Uruchom.

    Zrzut ekranu przedstawiający sposób testowania powiązania usługi Queue Storage w witrynie Azure Portal.

    Zwróć uwagę na to, że treść żądania zawiera name wartość Azure. Ta wartość jest wyświetlana w komunikacie kolejki utworzonym po wywołaniu funkcji.

    Alternatywą dla wybrania opcji Uruchom możesz wywołać funkcję, wprowadzając adres URL w przeglądarce i określając name wartość w ciągu zapytania. Ta metoda przeglądarki jest wyświetlana w sekcji Tworzenie pierwszej funkcji w witrynie Azure Portal.

  3. Sprawdź dzienniki, aby upewnić się, że funkcja zakończyła się pomyślnie.

    Nowa kolejka o nazwie outqueue jest tworzona na koncie magazynu przez środowisko uruchomieniowe usługi Functions po pierwszym użyciu powiązania wyjściowego. Konto magazynu służy do sprawdzania, czy kolejka i komunikat w nim zostały utworzone.

Znajdowanie konta magazynu połączonego z usługą AzureWebJobsStorage

  1. W aplikacji funkcji rozwiń węzeł Ustawienia, a następnie wybierz pozycję Zmienne środowiskowe.

  2. Na karcie Ustawienia aplikacji wybierz pozycję AzureWebJobsStorage.

    Zrzut ekranu przedstawiający stronę Konfiguracja z wybraną funkcją AzureWebJobsStorage.

  3. Znajdź i zanotuj nazwę konta.

    Zrzut ekranu przedstawiający sposób lokalizowania konta magazynu połączonego z usługą AzureWebJobsStorage.

Sprawdzanie kolejki wyjściowej

  1. W grupie zasobów aplikacji funkcji wybierz używane konto magazynu.

  2. W obszarze Usługa kolejki wybierz pozycję Kolejki i wybierz kolejkę o nazwie outqueue.

    Kolejka zawiera komunikat utworzony za pomocą powiązania danych wyjściowych kolejki po uruchomieniu funkcji wyzwalanej przez protokół HTTP. Jeśli funkcja została wywołana przy użyciu domyślnego elementu name o wartości Azure, komunikat w kolejce to Nazwa przekazana do funkcji: Azure.

  3. Ponownie uruchom funkcję.

    W kolejce pojawi się nowy komunikat.

Czyszczenie zasobów

W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie oczekujesz, że te zasoby będą potrzebne w przyszłości, możesz je usunąć, usuwając grupę zasobów:

  1. W menu witryny Azure Portal lub stronie głównej wybierz pozycję Grupy> zasobówmyResourceGroup.

  2. W okienku myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

  3. Wybierz pozycję Usuń grupę zasobów. Wpisz myResourceGroup w polu tekstowym, aby potwierdzić, a następnie wybierz pozycję Usuń.

W tym artykule dodano powiązanie wyjściowe do istniejącej funkcji. Aby uzyskać więcej informacji na temat powiązania z usługą Queue Storage, zobacz Wyzwalacz i powiązania usługi Queue Storage.