Függvények csatlakoztatása az Azure Storage-hoz a Visual Studióval
Az Azure Functions segítségével anélkül csatlakoztathatja az Azure-szolgáltatásokat és más erőforrásokat a függvényekhez, hogy saját integrációs kódot kellene írnia. Ezek a kötések, amelyek mind a bemenetet, mind a kimenetet képviselik, a függvénydefinícióban deklarálódnak. A kötések adatai a függvények számára paraméterekként vannak megadva. Az eseményindító egy speciális típusú bemeneti kötés. Bár egy függvénynek csak egy eseményindítója van, több bemeneti és kimeneti kötéssel is rendelkezhet. További információ: Azure Functions-eseményindítók és kötések fogalmai.
Ez a cikk bemutatja, hogyan csatlakoztathatja az előző rövid útmutatóban létrehozott függvényt az Azure Storage-hoz a Visual Studióval. A függvényhez hozzáadott kimeneti kötés adatokat ír a HTTP-kérésből egy üzenetbe egy Azure Queue Storage-üzenetsorba.
A legtöbb kötéshez olyan tárolt kapcsolati sztring szükséges, amelyet a Functions a kötött szolgáltatás eléréséhez használ. A könnyebb használat érdekében használja a függvényalkalmazással létrehozott Storage-fiókot. A fiókhoz való csatlakozást a rendszer már egy nevesített AzureWebJobsStorage
alkalmazásbeállításban tárolja.
Előfeltételek
A cikk megkezdése előtt a következőt kell tennie:
- Töltse ki a Visual Studio rövid útmutatójának 1. részét.
- Telepítse az Azure Storage Explorert. A Storage Explorer egy eszköz, amellyel megvizsgálhatja a kimeneti kötés által létrehozott üzenetsor-üzeneteket. A Storage Explorer macOS, Windows és Linux rendszerű operációs rendszereken támogatott.
- Jelentkezzen be Az Azure-előfizetésbe a Visual Studióból.
A függvényalkalmazás beállításainak letöltése
Az előző rövid útmutatóban létrehozott egy függvényalkalmazást az Azure-ban a szükséges Storage-fiókkal együtt. A fiók kapcsolati sztring biztonságosan tárolja az Azure-beli alkalmazásbeállításokban. Ebben a cikkben üzeneteket ír egy storage-üzenetsorba ugyanabban a fiókban. Ha a függvény helyi futtatásakor szeretne csatlakozni a Storage-fiókjához, le kell töltenie az alkalmazásbeállításokat a local.settings.json fájlba.
A Megoldáskezelőben kattintson a jobb gombbal a projektre, és válassza a Publish (Közzététel) lehetőséget.
A Közzététel lap Üzemeltetés területén bontsa ki a három elemet (...), és válassza a Azure-alkalmazás szolgáltatás beállításainak kezelése lehetőséget.
Az AzureWebJobsStorage területen másolja a Távoli sztring értékét a Helyi értékre, majd válassza az OK gombot.
A kapcsolat beállítását AzureWebJobsStorage
használó tárolókötés mostantól csatlakozhat a Queue Storage-hoz helyi futtatáskor.
Kötési bővítmények regisztrálása
Mivel queue storage kimeneti kötést használ, a projekt futtatása előtt telepítenie kell a Storage-kötések bővítményt. A HTTP- és időzítő-eseményindítók kivételével a kötések bővítménycsomagként vannak implementálva.
Az Eszközök menüben válassza a NuGet Csomagkezelő> Csomagkezelő Konzol lehetőséget.
A konzolon futtassa a következő Install-Package parancsot a Storage-bővítmények telepítéséhez:
Install-Package Microsoft.Azure.Functions.Worker.Extensions.Storage.Queues
Most hozzáadhatja a tárkimeneti kötést a projekthez.
Kimeneti kötés hozzáadása
Egy C#-projektben a kötések a függvénymetódus kötési attribútumaiként vannak definiálva. Bizonyos definíciók attól függenek, hogy az alkalmazás folyamatban (C#-osztálytár) vagy izolált feldolgozói folyamatban fut-e.
Nyissa meg a HttpExample.cs projektfájlt, és adja hozzá a következő MultiResponse
osztályt:
public class MultiResponse
{
[QueueOutput("outqueue",Connection = "AzureWebJobsStorage")]
public string[] Messages { get; set; }
public HttpResponseData HttpResponse { get; set; }
}
Az MultiResponse
osztály lehetővé teszi, hogy egy elnevezett outqueue
tárolási üzenetsorba és egy HTTP-sikerüzenetbe írjon. Több üzenet is elküldhető az üzenetsorba, mert az QueueOutput
attribútum egy sztringtömbre van alkalmazva.
A Connection
tulajdonság beállítja a tárfiók kapcsolati sztring. Ebben az esetben kihagyhatja Connection
, mert már használja az alapértelmezett tárfiókot.
Kimeneti kötést használó kód hozzáadása
A kötés definiálása után a name
kötés használatával attribútumként érheti el a függvény-aláírásban. Kimeneti kötés használatával nem kell az Azure Storage SDK-kódot használnia a hitelesítéshez, az üzenetsor-referenciák lekéréséhez vagy az adatok írásához. A Functions futtatókörnyezet és az üzenetsor kimeneti kötése végrehajtja ezeket a feladatokat.
Cserélje le a meglévő HttpExample
osztályt a következő kódra:
[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
};
}
}
Függvény helyi futtatása
A függvény futtatásához nyomja le az F5 billentyűt a Visual Studióban. Előfordulhat, hogy engedélyeznie kell egy tűzfalkivételt, hogy az eszközök kezelni tudják a HTTP-kéréseket. A rendszer soha nem kényszeríti ki az engedélyezési szinteket, ha helyileg futtat egy függvényt.
Másolja a függvény URL-címét az Azure-függvény futtatókörnyezetéből.
Illessze be a HTTP-kérés URL-címét a böngésző címsorába, és futtassa a kérést. Az alábbi képen a böngészőben a függvény által visszaadott helyi GET kérésre adott válasz látható:
A hibakeresés leállításához nyomja le a Shift+F5 billentyűt a Visual Studióban.
A függvények futtatókörnyezete létrehoz egy új, elnevezett outqueue
üzenetsort a tárfiókban a kimeneti kötés első használatakor. A Storage Explorer használatával ellenőrizheti, hogy az üzenetsor létrejött-e az új üzenettel együtt.
A Storage Explorer csatlakoztatása a fiókjához
Hagyja ki ezt a szakaszt, ha már telepítette az Azure Storage Explorert, és csatlakoztatta az Azure-fiókjához.
Futtassa az Azure Storage Explorer eszközt, válassza a bal oldali csatlakozás ikont, és válassza a Fiók hozzáadása lehetőséget.
A Csatlakozás párbeszédpanelen válassza az Azure-fiók hozzáadása, az Azure-környezet kiválasztása, majd a Bejelentkezés... lehetőséget.
Miután sikeresen bejelentkezett a fiókjába, megjelenik a fiókjához társított összes Azure-előfizetés. Válassza ki az előfizetést, és válassza az Explorer megnyitása lehetőséget.
A kimeneti üzenetsor vizsgálata
A Storage Explorerben bontsa ki az Üzenetsorok csomópontot, majd válassza ki a outqueue nevű üzenetsort.
Az üzenetsor tartalmazza az üzenetet, amelyet az üzenetsor kimeneti kötése létrehozott a HTTP által aktivált függvény futtatásakor. Ha az alapértelmezett Azure
name
értékkel hívta meg a függvényt, az üzenetsorban található üzenet a következő lesz: A függvénynek átadott név: Azure.Futtassa újra a függvényt, küldjön egy másik kérést, és megjelenik egy új üzenet az üzenetsorban.
Most itt az ideje, hogy újra közzétehesse a frissített függvényalkalmazást az Azure-ban.
A frissített alkalmazás ismételt üzembe helyezése és ellenőrzése
A Megoldáskezelő kattintson a jobb gombbal a projektre, és válassza a Közzététel lehetőséget, majd a Közzététel lehetőséget választva tegye közzé újra a projektet az Azure-ban.
Az üzembe helyezés befejezése után ismét a böngészővel tesztelheti az újra üzembe helyezhető függvényt. A korábbiakhoz hasonlóan fűzze hozzá a lekérdezési sztringet
&name=<yourname>
az URL-címhez.Ismét tekintse meg az üzenetet a tárolási üzenetsorban annak ellenőrzéséhez, hogy a kimeneti kötés ismét létrehoz-e új üzenetet az üzenetsorban.
Az erőforrások eltávolítása
Az ebben a gyűjteményben lévő többi rövid útmutató erre a rövid útmutatóra épül. Ha további rövid útmutatókkal, oktatóanyagokkal vagy az ebben a rövid útmutatóban létrehozott szolgáltatásokkal szeretne dolgozni, ne törölje az erőforrásokat.
Az erőforrások kifejezés az Azure-ban például függvényalkalmazásokra, függvényekre vagy tárfiókokra utal. Ezek erőforráscsoportokba vannak csoportosítva, és a csoport törlésével törölheti a csoport összes elemét.
A rövid útmutatók elvégzéséhez erőforrásokat hozott létre. Előfordulhat, hogy ezekért az erőforrásokért a fiók állapotától és a szolgáltatás díjszabásától függően kell fizetnie. Ha már nincs szüksége ezekre az erőforrásokra, a következőképpen törölheti őket:
Az Azure Portalon nyissa meg az Erőforráscsoport oldalt.
Ha a függvényalkalmazás oldaláról szeretné elérni ezt a lapot, válassza az Áttekintés lapot, majd válassza az Erőforráscsoport alatti hivatkozást.
Ha az irányítópultról szeretné elérni ezt a lapot, válassza az Erőforráscsoportok lehetőséget, majd válassza ki a cikkhez használt erőforráscsoportot.
Az Erőforráscsoport lapon tekintse át a belefoglalt erőforrások listáját, és ellenőrizze, hogy ezek-e törölni kívánt erőforrások.
Válassza az Erőforráscsoport törlése lehetőséget , és kövesse az utasításokat.
A törlés eltarthat néhány percig. Amint a művelet befejeződött, néhány másodpercre egy értesítés jelenik meg. Az értesítést úgy is megtekintheti, ha kiválasztja a harang ikont az oldal tetején.
Következő lépések
Frissítette a HTTP által aktivált függvényt, hogy adatokat írjon egy Storage-üzenetsorba. A Functions fejlesztésével kapcsolatos további információkért lásd: Azure Functions fejlesztése a Visual Studióval.
Ezután engedélyeznie kell az Application Insights monitorozását a függvényalkalmazáshoz: