Добавление сообщений в очередь службы хранилища Azure с помощью ФункцийAdd messages to an Azure Storage queue using Functions

В службе "Функции Azure" входные и выходные привязки предоставляют декларативный способ предоставления коду данных внешних служб.In Azure Functions, input and output bindings provide a declarative way to make data from external services available to your code. В этом кратком руководстве используется выходная привязка для создания сообщения в очереди при активации функции HTTP-запросом.In this quickstart, you use an output binding to create a message in a queue when a function is triggered by an HTTP request. Используйте обозреватель службы хранилища Azure для просмотра сообщений очереди, создаваемых вашей функцией:You use Azure Storage Explorer to view the queue messages that your function creates:

Сообщение очереди в Обозревателе службы хранилища

Предварительные требованияPrerequisites

Для работы с этим кратким руководством сделайте следующее:To complete this quickstart:

Добавление выходной привязкиAdd an output binding

В этом разделе вам нужно будет добавить выходную привязку хранилища очередей для функции, созданной ранее, с помощью пользовательского интерфейса портала.In this section, you use the portal UI to add a queue storage output binding to the function you created earlier. Эта привязка позволит написать минимальный код для создания сообщения в очереди.This binding will make it possible to write minimal code to create a message in a queue. Вам не нужно писать код для таких задач, как открытие подключения к хранилищу, создание очереди или получение ссылки на очередь.You don't have to write code for tasks such as opening a storage connection, creating a queue, or getting a reference to a queue. Эти задачи выполняет среда выполнения службы "Функции Azure" и выходная привязка очереди.The Azure Functions runtime and queue output binding take care of those tasks for you.

  1. На портале Azure откройте страницу приложения-функции для приложения, созданного ранее.In the Azure portal, open the function app page for the function app that you created in Create your first function from the Azure portal. Для этого последовательно выберите Все службы > Приложения-функции, а затем выберите приложение-функцию.To do this, select All services > Function Apps, and then select your function app.

  2. Выберите созданную ранее функцию.Select the function that you created in that earlier quickstart.

  3. Выберите Интегрировать > Создать выходные данные > Хранилище очередей Azure.Select Integrate > New output > Azure Queue storage.

  4. Нажмите кнопку Выбрать.Click Select.

    Добавление выходной привязки хранилища очередей к функции на портале Azure.

  5. Если появится сообщение Расширения не установлены, щелкните Установить, чтобы установить в приложение-функцию расширение привязки Службы хранилища.If you get an Extensions not installed message, choose Install to install the Storage bindings extension in the function app. Это может занять несколько минут.This may take a minute or two.

    Установка расширения привязки Службы хранилища

  6. В разделе Azure Queue Storage output (Выходные данные хранилища очередей Azure) используйте параметры, указанные в следующей таблице:Under Azure Queue Storage output, use the settings as specified in the table that follows this screenshot:

    Добавление выходной привязки хранилища очередей к функции на портале Azure.

    ПараметрSetting Рекомендуемое значениеSuggested value ОПИСАНИЕDescription
    Имя параметра сообщенияMessage parameter name outputQueueItemoutputQueueItem Имя параметра выходной привязки.The name of the output binding parameter.
    Подключение к учетной записи храненияStorage account connection AzureWebJobsStorageAzureWebJobsStorage Вы можете использовать подключение к учетной записи хранения, которое уже используется вашим приложением-функцией, или создать его.You can use the storage account connection already being used by your function app, or create a new one.
    Имя очередиQueue name outqueueoutqueue Имя очереди для подключения к вашей учетной записи хранения.The name of the queue to connect to in your Storage account.
  7. Щелкните Сохранить, чтобы добавить привязку.Click Save to add the binding.

Теперь, когда выходная привязка определена, вам нужно обновить код, чтобы использовать привязку для добавления сообщений в очередь.Now that you have an output binding defined, you need to update the code to use the binding to add messages to a queue.

Добавление кода, который использует выходную привязкуAdd code that uses the output binding

В этом разделе вы добавляете код, который записывает сообщение в выходную очередь.In this section, you add code that writes a message to the output queue. Сообщение содержит значение, которое передается в триггер HTTP в строке запроса.The message includes the value that is passed to the HTTP trigger in the query string. Например, если строка запроса содержит name=Azure, в сообщении очереди будет указано: Имя передано функции: Azure.For example, if the query string includes name=Azure, the queue message will be Name passed to the function: Azure.

  1. Щелкните функцию для отображения ее кода в редакторе.Select your function to display the function code in the editor.

  2. Измените код функции в соответствии с ее языком.Update the function code depending on your function language:

    Добавьте параметр outputQueueItem в сигнатуру метода, как показано в следующем примере.Add an outputQueueItem parameter to the method signature as shown in the following example.

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

    В теле функции непосредственно перед инструкцией return добавьте код, который создает сообщение очереди с помощью этого параметра.In the body of the function just before the return statement, add code that uses the parameter to create a queue message.

    outputQueueItem.Add("Name passed to the function: " + name);
    
  3. Щелкните Сохранить, чтобы сохранить изменения.Select Save to save changes.

Проверка функцииTest the function

  1. Сохранив изменения в коде, щелкните ОК.After the code changes are saved, select Run.

    Добавление выходной привязки хранилища очередей к функции на портале Azure.

    Обратите внимание, что тело запроса содержит name значение Azure.Notice that the Request body contains the name value Azure. Это значение находится в сообщении очереди, которое создается при вызове функции.This value appears in the queue message that is created when the function is invoked.

    Кроме выбора элемента Запуск можно вызвать функцию, введя URL-адрес в браузере и указав значение name в строке запроса.As an alternative to selecting Run here, you can call the function by entering a URL in a browser and specifying the name value in the query string. Метод браузера описан в предыдущем кратком руководстве.The browser method is shown in the previous quickstart.

  2. Проверьте журналы, чтобы убедиться, что функция успешно выполнена.Check the logs to make sure that the function succeeded.

Новая очередь с именем outqueue создается в вашей учетной записи хранения средой выполнения Функции при первом использовании выходной привязки.A new queue named outqueue is created in your Storage account by the Functions runtime when the output binding is first used. Чтобы убедиться, что очередь и сообщение в ней были созданы, вам нужно будет использовать Обозреватель службы хранилища.You'll use Storage Explorer to verify that the queue and a message in it were created.

Подключение Обозревателя службы хранилища к учетной записиConnect Storage Explorer to your account

Пропустите этот раздел, если вы уже установили Обозреватель службы хранилища и подключили его к используемой учетной записи хранения.Skip this section if you have already installed Storage Explorer and connected it to the storage account that you're using with this quickstart.

  1. Запустите инструмент Обозреватель службы хранилища Microsoft Azure, щелкните значок подключения слева, выберите Использовать имя и ключ учетной записи хранения, а затем щелкните Далее.Run the Microsoft Azure Storage Explorer tool, select the connect icon on the left, choose Use a storage account name and key, and select Next.

    Запуск инструмента "Обозреватель учетной записи хранения"

  2. На портале Azure на странице приложения-функции выберите свою функцию, а затем Интегрировать.In the Azure portal, on the function app page, select your function and then select Integrate.

  3. Выберите выходную привязку Хранилище очередей Azure, добавленную ранее.Select the Azure Queue storage output binding that you added in an earlier step.

  4. В нижней части страницы разверните раздел Документация.Expand the Documentation section at the bottom of the page.

    На портале показаны учетные данные, которые вы можете использовать в Обозревателе службы хранилища для подключения к учетной записи хранения.The portal shows credentials that you can use in Storage Explorer to connect to the storage account.

    Получение учетных данных для подключения к учетной записи хранения.

  5. Скопируйте значение имени учетной записи с портала и вставьте его в поле Имя учетной записи в Обозреватель службы хранилища.Copy the Account Name value from the portal and paste it in the Account name box in Storage Explorer.

  6. Нажмите значок "Показать/Скрыть" рядом с полем Ключ учетной записи, чтобы отобразить это значение. Затем скопируйте значение ключа учетной записи и вставьте его в поле Учетная запись в Обозревателе службы хранилища.Click the show/hide icon next to Account Key to display the value, and then copy the Account Key value and paste it in the Account key box in Storage Explorer.

  7. Выберите Далее > Подключить.Select Next > Connect.

    Укажите учетные данные хранилища и подключитесь.

Проверка выходной очередиExamine the output queue

  1. В Обозревателе службы хранилища выберите используемую учетную запись хранения.In Storage Explorer, select the storage account that you're using for this quickstart.

  2. Разверните узел Очереди, а затем выберите очередь с именем outqueue.Expand the Queues node, and then select the queue named outqueue.

    В ней содержится сообщение о том, что выходная привязка очереди создана при запуске функции, активируемой HTTP.The queue contains the message that the queue output binding created when you ran the HTTP-triggered function. Если вы вызывали функцию со значением по умолчанию name Azure, в сообщении очереди будет указано Имя переданной функции: Azure.If you invoked the function with the default name value of Azure, the queue message is Name passed to the function: Azure.

    Сообщение очереди в Обозревателе службы хранилища

  3. Запустите функцию еще раз, и в очереди появится новое сообщение.Run the function again, and you'll see a new message appear in the queue.

Очистка ресурсовClean up resources

Другие краткие руководства в этой коллекции созданы на основе этого документа.Other quick starts in this collection build upon this quick start. Если вы планируете работать с последующими краткими руководствами или с любыми службами, созданными при работе с этим руководством, не очищайте ресурсы.If you plan to work with subsequent quick starts, tutorials, or with any of the services you have created in this quick start, do not clean up the resources.

Под ресурсами в Azure подразумеваются приложения-функции, функции, учетные записи хранения и т. д.Resources in Azure refers to function apps, functions, storage accounts, and so forth. Они объединяются в группы ресурсов, при удалении которых удаляются и все данные в них.They are grouped into resource groups, and you can delete everything in a group by deleting the group.

Вы создали ресурсы для завершения этих кратких руководств.You created resources to complete these quickstarts. Вам могут быть выставлены счета за эти ресурсы в зависимости от состояния учетной записи и цен на службы.You may be billed for these resources, depending on your account status and service pricing. Если вам больше не нужны ресурсы, их можно удалить следующим образом:If you don't need the resources anymore, here's how to delete them:

  1. На портале Azure перейдите на страницу Resource group (Группа ресурсов).In the Azure portal, go to the Resource group page.

    Чтобы перейти на эту страницу со страницы приложения-функции, выберите вкладку Обзор, а затем выберите ссылку в разделе Resource group (Группа ресурсов).To get to that page from the function app page, select the Overview tab and then select the link under Resource group.

    Выберите группу ресурсов, которую требуется удалить со страницы приложения-функции.

    Чтобы перейти на эту страницу с панели управления, выберите Resource groups (Группы ресурсов), а затем выберите группу ресурсов, которая использовалась в этом кратком руководстве.To get to that page from the dashboard, select Resource groups, and then select the resource group that you used for this quickstart.

  2. На странице Resource group (Группа ресурсов) просмотрите список включенных ресурсов и убедитесь, что именно их требуется удалить.In the Resource group page, review the list of included resources, and verify that they are the ones you want to delete.

  3. Выберите Удалить группу ресурсов и следуйте инструкциям.Select Delete resource group, and follow the instructions.

    Удаление может занять несколько минут.Deletion may take a couple of minutes. После этого на несколько секунд появится уведомление.When it's done, a notification appears for a few seconds. Кроме того, можно выбрать значок колокольчика в верхней части страницы, чтобы просмотреть уведомление.You can also select the bell icon at the top of the page to view the notification.

Дополнительная информацияNext steps

Выполнив указания этого краткого руководства, вы добавили выходную привязку в имеющуюся функцию.In this quickstart, you added an output binding to an existing function. Дополнительные сведения о привязках к хранилищу очередей см.в статье Привязки очередей службы хранилища для Функций Azure.For more information about binding to Queue storage, see Azure Functions Storage queue bindings.