Připojení funkcí ke službě Azure Storage pomocí sady Visual Studio
Azure Functions umožňuje připojit služby Azure a další prostředky k funkcím, aniž byste museli psát vlastní integrační kód. Tyto vazby, které představují vstup i výstup, jsou deklarovány v rámci definice funkce. Data z vazeb má funkce k dispozici jako parametry. Trigger je speciální typ vstupní vazby. I když má funkce pouze jeden trigger, může mít více vstupních a výstupních vazeb. Další informace najdete v tématu Koncepty triggerů a vazeb Azure Functions.
V tomto článku se dozvíte, jak pomocí sady Visual Studio připojit funkci, kterou jste vytvořili v předchozím článku rychlého startu, ke službě Azure Storage. Výstupní vazba, kterou do této funkce přidáte, zapisuje data z požadavku HTTP do zprávy ve frontě azure Queue Storage.
Většina vazeb vyžaduje uloženou připojovací řetězec, kterou functions používá pro přístup k vázané službě. Abyste to usnadnili, použijte účet úložiště, který jste vytvořili ve své aplikaci funkcí. Připojení k tomuto účtu je již uloženo v nastavení aplikace s názvem AzureWebJobsStorage
.
Požadavky
Než začnete s tímto článkem, musíte:
- Dokončete část 1 rychlého startu sady Visual Studio.
- Nainstalujte Průzkumník služby Azure Storage. Průzkumník služby Storage je nástroj, který použijete k prozkoumání zpráv fronty generovaných výstupní vazbou. Průzkumník služby Storage se podporuje v operačních systémech macOS, Windows a Linux.
- Přihlaste se ke svému předplatnému Azure ze sady Visual Studio.
Stažení nastavení aplikace funkcí
V předchozím článku rychlého startu jste vytvořili aplikaci funkcí v Azure společně s požadovaným účtem úložiště. Připojovací řetězec pro tento účet se bezpečně uloží v nastavení aplikace v Azure. V tomto článku napíšete zprávy do fronty úložiště ve stejném účtu. Pokud se chcete připojit ke svému účtu Storage při místním spuštění funkce, musíte stáhnout nastavení aplikace do souboru local.settings.json .
V Průzkumníku řešení klikněte pravým tlačítkem na požadovaný projekt a vyberte Publikovat.
Na kartě Publikovat v části Hostování rozbalte tři tečky (...) a vyberte Spravovat nastavení služby Aplikace Azure.
V části AzureWebJobsStorage zkopírujte hodnotu vzdáleného řetězce do místní a pak vyberte OK.
Vazba úložiště, která používá AzureWebJobsStorage
nastavení pro připojení, se teď může při místním spuštění připojit k vaší službě Queue Storage.
Registrace rozšíření vazeb
Vzhledem k tomu, že používáte výstupní vazbu Queue Storage, potřebujete před spuštěním projektu nainstalované rozšíření vazby úložiště. Kromě triggerů HTTP a časovače se vazby implementují jako balíčky rozšíření.
V nabídce Nástroje vyberte Správce balíčků> NuGet Správce balíčků Konzola.
V konzole spusťte následující příkaz Install-Package pro instalaci rozšíření úložiště:
Install-Package Microsoft.Azure.Functions.Worker.Extensions.Storage.Queues
Teď můžete do projektu přidat výstupní vazbu úložiště.
Přidání výstupní vazby
V projektu jazyka C# jsou vazby definovány jako atributy vazby v metodě funkce. Konkrétní definice závisí na tom, jestli vaše aplikace běží v procesu (knihovna tříd C#) nebo v izolovaném pracovním procesu.
Otevřete soubor projektu HttpExample.cs a přidejte následující MultiResponse
třídu:
public class MultiResponse
{
[QueueOutput("outqueue",Connection = "AzureWebJobsStorage")]
public string[] Messages { get; set; }
public HttpResponseData HttpResponse { get; set; }
}
Třída MultiResponse
umožňuje zapisovat do fronty úložiště s názvem outqueue
a zprávou o úspěchu PROTOKOLU HTTP. Do fronty může být odesláno více zpráv, protože QueueOutput
se atribut použije na pole řetězců.
Vlastnost Connection
nastaví připojovací řetězec pro účet úložiště. V tomto případě byste mohli vynechat Connection
, protože už používáte výchozí účet úložiště.
Přidání kódu, který používá výstupní vazbu
Po definování vazby můžete použít name
vazbu pro přístup k ní jako atribut v podpisu funkce. Pomocí výstupní vazby nemusíte k ověřování používat kód sady SDK služby Azure Storage, získání odkazu na frontu nebo zápis dat. Tyto úlohy za vás provádí modul runtime služby Functions a výstupní vazba fronty.
Nahraďte existující HttpExample
třídu následujícím kódem:
[Function("HttpExample")]
public static MultiResponse Run([HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequestData req,
FunctionContext executionContext)
{
var logger = executionContext.GetLogger("HttpExample");
logger.LogInformation("C# HTTP trigger function processed a request.");
var message = "Welcome to Azure Functions!";
var response = req.CreateResponse(HttpStatusCode.OK);
response.Headers.Add("Content-Type", "text/plain; charset=utf-8");
response.WriteString(message);
// Return a response to both HTTP trigger and storage output binding.
return new MultiResponse()
{
// Write a single message.
Messages = new string[] { message },
HttpResponse = response
};
}
}
Místní spuštění funkce
Funkci spustíte stisknutím klávesy F5 v sadě Visual Studio. Možná budete muset povolit výjimku brány firewall, aby nástroje mohly zpracovávat požadavky HTTP. Úrovně autorizace se nikdy nevynucují při místním spuštění funkce.
Zkopírujte adresu URL vaší funkce z výstupu modulu runtime služby Azure Functions.
Vložte adresu URL požadavku HTTP do adresního řádku prohlížeče a spusťte požadavek. Následující obrázek ukazuje odpověď v prohlížeči na místní požadavek GET vrácený funkcí:
Ladění zastavíte stisknutím kláves Shift+F5 v sadě Visual Studio.
Při prvním použití výstupní vazby se v účtu úložiště vytvoří nová fronta s názvem outqueue
runtime služby Functions. K ověření vytvoření fronty spolu s novou zprávou použijete Průzkumník služby Storage.
Propojení Průzkumníka služby Storage s vaším účtem
Tuto část přeskočte, pokud jste už nainstalovali Průzkumník služby Azure Storage a připojili ho ke svému účtu Azure.
Spusťte nástroj Průzkumník služby Azure Storage, vyberte na levé straně ikonu připojení a vyberte Přidat účet.
V dialogovém okně Připojit zvolte Přidat účet Azure, zvolte prostředí Azure a pak vyberte Přihlásit se....
Po úspěšném přihlášení ke svému účtu se zobrazí všechna předplatná Azure přidružená k vašemu účtu. Zvolte své předplatné a vyberte Otevřít Průzkumníka.
Prozkoumání výstupní fronty
V Průzkumník služby Storage rozbalte uzel Fronty a vyberte frontu s názvem outqueue.
Tato fronta obsahuje zprávu, kterou vytvořila výstupní vazba fronty při spuštění funkce aktivované protokolem HTTP. Pokud jste tuto funkci volali s výchozí hodnotou
name
(Azure), zpráva fronty je Name passed to the function: Azure.Spusťte funkci znovu, odešlete další požadavek a ve frontě se zobrazí nová zpráva.
Teď je čas znovu publikovat aktualizovanou aplikaci funkcí do Azure.
Opětovné nasazení a ověření aktualizované aplikace
V Průzkumník řešení klikněte pravým tlačítkem na projekt a vyberte Publikovat a pak zvolte Publikovat, aby se projekt znovu publikoval do Azure.
Po dokončení nasazení můžete znovu použít prohlížeč k otestování znovu nasazené funkce. Stejně jako předtím připojte řetězec
&name=<yourname>
dotazu k adrese URL.Znovu zobrazte zprávu ve frontě úložiště a ověřte, že výstupní vazba znovu vygeneruje novou zprávu ve frontě.
Vyčištění prostředků
Další rychlé starty v této kolekci jsou postavené na tomto rychlém startu. Pokud plánujete pracovat s dalšími rychlými starty, kurzy nebo s některou ze služeb, které jste vytvořili v tomto rychlém startu, nevyčistíte prostředky.
Prostředky v Azure odkazují na aplikace funkcí, funkce, účty úložiště atd. Jsou seskupené do skupin prostředků a můžete odstranit všechno ve skupině odstraněním skupiny.
Vytvořili jste prostředky pro dokončení těchto rychlých startů. Tyto prostředky se vám můžou účtovat v závislosti na stavu vašeho účtu a cenách služeb. Pokud prostředky už nepotřebujete, můžete k jejich odstranění použít tento postup:
Na webu Azure Portal přejděte na stránku Skupina prostředků.
Pokud se chcete na tuto stránku dostat ze stránky aplikace funkcí, vyberte kartu Přehled a pak vyberte odkaz v části Skupina prostředků.
Pokud se chcete na tuto stránku dostat z řídicího panelu, vyberte Skupiny prostředků a pak vyberte skupinu prostředků, kterou jste použili pro tento článek.
Na stránce Skupina prostředků zkontrolujte seznam zahrnutých prostředků a ověřte, že se jedná o ty, které chcete odstranit.
Vyberte Odstranit skupinu prostředků a postupujte podle pokynů.
Odstranění může trvat několik minut. Po jeho dokončení se na několik sekund zobrazí oznámení. K zobrazení tohoto oznámení můžete také vybrat ikonu zvonku v horní části stránky.
Další kroky
Aktualizovali jste funkci aktivovanou protokolem HTTP tak, aby zapisovala data do fronty služby Storage. Další informace o vývoji funkcí najdete v tématu Vývoj azure Functions pomocí sady Visual Studio.
Dále byste měli povolit monitorování Application Insights pro vaši aplikaci funkcí: