Udostępnij za pośrednictwem


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 będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.

W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Grupy zasobów. Następnie na stronie Grupy zasobów wybierz pozycję myResourceGroup.

Na stronie myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

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.