Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Amikor csak lehetséges, hozzon létre és ellenőrizze az Azure Functions-kódprojektet egy helyi fejlesztési környezetben. Az Azure Functions Core Tools használatával beszerezheti az Azure Functions helyi futtatókörnyezeti verzióját, amely integrált fejlesztéshez, hibakereséshez és üzembe helyezéshez integrálható népszerű fejlesztői eszközökkel. A helyi függvények akár élő Azure-szolgáltatásokhoz is csatlakozhatnak.
Ez a cikk megosztott útmutatást nyújt a helyi fejlesztéshez, például a local.settings.json fájllal való munkához. Emellett a fejlesztési környezetre vonatkozó útmutatásra is hivatkozik.
Jótanács
A függvények helyi fejlesztésével kapcsolatos részletes információkért tekintse meg a csatolt IDE-specifikus útmutatókat.
Helyi fejlesztési környezetek
A helyi számítógépen a függvények fejlesztésének módja a nyelvtől és az eszközhasználati beállításoktól függ. Válassza ki a kívánt nyelvet a cikk tetején.
Jótanács
Minden helyi fejlesztés az Azure Functions Core Toolsra támaszkodik, amely biztosítja a Functions-futtatókörnyezetet a helyi környezetben történő hibakereséshez.
Ezeket a fejlesztői környezeteket használva helyileg kódelheti a függvényeket az előnyben részesített nyelven:
| Környezet | Leírás |
|---|---|
| Visual Studio | Az Azure Functions-eszközöket a Visual StudioAzure-fejlesztési számítási feladatai tartalmazzák. C# függvénykódját .NET-osztálytárként fordíthatja le és helyezheti üzembe az Azure-ban. Tartalmazza a helyi teszteléshez szükséges alapvető eszközöket. További információ: Az első C#-függvény létrehozása az Azure-ban a Visual Studióval. |
| Visual Studio Code | A Visual Studio Code Azure Functions-bővítménye függvénytámogatást ad a Visual Studio Code-hoz. Az alapvető eszközökre van szükség. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása a Visual Studio Code használatával. |
| Parancssor vagy terminál | Az Azure Functions Core Tools biztosítja az alapvető futtatókörnyezetet és a függvények létrehozásához szükséges sablonokat, amelyek lehetővé teszik a helyi fejlesztést. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: C#-függvény létrehozása az Azure-ban a parancssorból. |
| Környezet | Leírás |
|---|---|
| Maven | A Maven archetípus a Core Tools használatával teszi lehetővé a Java-függvények fejlesztését. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása Java és Maven használatával. |
| Visual Studio Code | A Visual Studio Code Azure Functions-bővítménye függvénytámogatást ad a Visual Studio Code-hoz. Az alapvető eszközökre van szükség. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása a Visual Studio Code használatával. |
| IntelliJ IDEA | A Maven archetype és a Core Tools segítségével az IntelliJ használatával fejlesztheti a függvényeket. További információ: Az első Java-függvény létrehozása az Azure-ban az IntelliJ használatával. |
| Eclipse | A Maven archetípusa és a Core Tools segítségével az Eclipse használatával fejlesztheti a függvényeket. További információ: Az első Java-függvény létrehozása az Azure-ban az Ecplise használatával. |
| Környezet | Leírás |
|---|---|
| Visual Studio Code | A Visual Studio Code Azure Functions-bővítménye függvénytámogatást ad a Visual Studio Code-hoz. Az alapvető eszközökre van szükség. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása a Visual Studio Code használatával. |
| Parancssor vagy terminál | Az Azure Functions Core Tools biztosítja az alapvető futtatókörnyezetet és a függvények létrehozásához szükséges sablonokat, amelyek lehetővé teszik a helyi fejlesztést. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Node.js függvény létrehozása az Azure-ban a parancssorból. |
| Környezet | Leírás |
|---|---|
| Visual Studio Code | A Visual Studio Code Azure Functions-bővítménye függvénytámogatást ad a Visual Studio Code-hoz. Az alapvető eszközökre van szükség. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása a Visual Studio Code használatával. |
| Parancssor vagy terminál | Az Azure Functions Core Tools biztosítja az alapvető futtatókörnyezetet és a függvények létrehozásához szükséges sablonokat, amelyek lehetővé teszik a helyi fejlesztést. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: PowerShell-függvény létrehozása az Azure-ban a parancssorból. |
| Környezet | Leírás |
|---|---|
| Visual Studio Code | A Visual Studio Code Azure Functions-bővítménye függvénytámogatást ad a Visual Studio Code-hoz. Az alapvető eszközökre van szükség. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Az első függvény létrehozása a Visual Studio Code használatával. |
| Parancssor vagy terminál | Az Azure Functions Core Tools biztosítja az alapvető futtatókörnyezetet és a függvények létrehozásához szükséges sablonokat, amelyek lehetővé teszik a helyi fejlesztést. Támogatja a linuxos, macOS- és Windows-alapú fejlesztést. További információ: Python-függvény létrehozása az Azure-ban a parancssorból. |
Ezen helyi fejlesztési környezetek mindegyike lehetővé teszi függvényalkalmazás-projektek létrehozását, és előre definiált függvénysablonok használatával új függvényeket hozhat létre. Minden környezet a Core Tools használatával teszteli és hibakeresésre használja a függvényeket a saját gépén található valós Functions-futtatókörnyezetben, ugyanúgy, mint bármely más alkalmazásban. A függvényalkalmazás-projektet ezen környezetek bármelyikéből közzéteheti az Azure-ban.
Helyi projektfájlok
A Functions-projektkönyvtár a projekt gyökérmappájában található alábbi fájlokat tartalmazza, nyelvtől függetlenül:
| Fájlnév | Leírás |
|---|---|
| host.json | További információ: host.json hivatkozás. |
| local.settings.json | A Core Tools által a helyi futtatáskor használt beállítások, beleértve az alkalmazásbeállításokat is. További információ: helyi beállítások fájlja. |
| .gitignore | Megakadályozza, hogy a local.settings.json fájl véletlenül közzé legyen téve egy Git-adattárban. További információ: helyi beállítások fájlja. |
| .vscode\extensions.json | A Projektmappa Visual Studio Code-ban való megnyitásakor használt beállításfájl. |
A projekt más fájljai a nyelvtől és az adott függvénytől függenek. További információkért tekintse meg a nyelv fejlesztői útmutatóját.
Local settings file (Helyi beállításfájl)
A local.settings.json fájl tárolja a helyi fejlesztési eszközök által használt alkalmazásbeállításokat és beállításokat. Csak a projekt helyi futtatásakor használja a local.settings.json fájl beállításait. Amikor közzéteszi a projektet az Azure-ban, adja hozzá a szükséges beállításokat a függvényalkalmazás alkalmazásbeállításaihoz.
Fontos
Mivel a local.settings.json fájl titkos kódokat , például kapcsolati sztringeket tartalmazhat, körültekintően véglegesítse a forrásvezérlőben. A Functionst támogató eszközök lehetővé teszik a local.settings.json fájl beállításainak szinkronizálását abban a függvényalkalmazásban, amelyre a projektet üzembe helyezik.
A local.settings.json fájl struktúrája a következő:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "<language worker>",
"AzureWebJobsStorage": "<connection-string>",
"MyBindingConnection": "<binding-connection-string>",
"AzureWebJobs.HttpExample.Disabled": "true"
},
"Host": {
"LocalHttpPort": 7071,
"CORS": "*",
"CORSCredentials": false
},
"ConnectionStrings": {
"SQLConnectionString": "<sqlclient-connection-string>"
}
}
Ezek a beállítások támogatottak a projektek helyi futtatásakor:
| Beállítás | Leírás |
|---|---|
IsEncrypted |
Ha ez a beállítás be van állítva true, a rendszer minden értéket helyi gépkulcs használatával titkosít. A func settings parancsokkal használható. Az alapértelmezett érték false. Érdemes lehet titkosítani a local.settings.json fájlt a helyi számítógépen, ha érzékeny adatokat tartalmaz, mint például szolgáltatáskapcsolati karakterláncokat. A gazdagép futás közben automatikusan dekódolja a beállításokat. A helyileg titkosított beállítások olvasása előtt használja a func settings decrypt parancsot. |
Values |
A projekt helyi futtatásakor használt alkalmazásbeállítások gyűjteménye. Az Azure-beli függvényalkalmazásban az alkalmazás beállításait ezek a kulcs-érték párok (szöveg-szöveg) határozzák meg, mint például AzureWebJobsStorage. Számos eseményindító és kötés rendelkezik olyan tulajdonságokkal, amelyek egy kapcsolati sztring alkalmazásbeállításra hivatkoznak, például Connection a Blob Storage-eseményindítóhoz. Ezekhez a tulajdonságokhoz a tömbben Values definiált alkalmazásbeállításra van szükség. A gyakran használt beállítások listáját a következő táblázatban találja. Az értékeknek sztringeknek kell lenniük, nem pedig JSON-objektumoknak vagy tömböknek. A beállításnevek nem tartalmazhatnak dupla aláhúzást ( __), és nem tartalmazhatnak kettőspontot (:). A kettős aláhúzásos karakterek a futtatókörnyezet által vannak lefoglalva, és a kettőspont a függőséginjektálás támogatására van fenntartva. |
Host |
Az ebben a szakaszban található beállítások testre szabják a Functions-gazdagép folyamatát, amikor helyileg futtat projekteket. Ezek a beállítások eltérnek a host.json beállításaitól, amelyek az Azure-beli projektek futtatásakor is érvényesek. |
LocalHttpPort |
Beállítja a helyi Functions-gazdagép (func host start és func run) futtatásakor használt alapértelmezett portot. A --port parancssori beállítás elsőbbséget élvez ezzel a beállítással szemben. Ha például a Visual Studio IDE-ben fut, módosíthatja a portszámot a "Project Properties – Debug" (Projekttulajdonságok –> Hibakeresés) ablakra lépve, és explicit módon megadhatja a portszámot egy host start --port <your-port-number> olyan parancsban, amely az "Alkalmazásargumentumok" mezőben adható meg. |
CORS |
Meghatározza a forrásközi erőforrásmegosztáshoz (CORS) engedélyezett forrásokat. A forrásokat vesszővel elválasztott listaként, szóközök nélkül adja meg. A helyettesítő karakterek (*) értéke támogatott, ami lehetővé teszi a kéréseket bármilyen forrásból. |
CORSCredentials |
Ha be van állítva true, engedélyezi a withCredentials kéréseket. |
ConnectionStrings |
Gyűjtemény. Ne használja ezt a gyűjteményt a függvények kötéseihez szükséges kapcsolati karakterláncok tárolására. Ezt a gyűjteményt csak olyan keretrendszerek használják, amelyek általában a kapcsolati sztringeket egy konfigurációs fájl ConnectionStrings szakaszából kapják, például az Entity Framework. Az objektumban található kapcsolati sztringek a System.Data.SqlClient szolgáltatótípussal vannak hozzáadva a környezethez. A gyűjtemény elemei nem jelennek meg az Azure-ban más alkalmazásbeállításokkal. Ezeket az értékeket explicit módon kell hozzáadnia a Connection strings függvényalkalmazás beállításainak gyűjteményéhez. Ha egy SqlConnection-t hoz létre a függvénykódjában, a kapcsolat karakterlánc értékét a többi kapcsolattal együtt tárolja a portál Alkalmazásbeállítások-ban. |
A következő alkalmazásbeállítások vehetők fel a Values tömbbe, amikor helyileg futtatják:
| Beállítás | Értékek | Leírás |
|---|---|---|
AzureWebJobsStorage |
Tárfiók kapcsolati karakterlánc vagyUseDevelopmentStorage=true |
Tartalmazza az Azure Storage-fiók kapcsolati sztringjét. HTTP-nek nem megfelelő eseményindítók használatakor szükséges. További információkért lásd a AzureWebJobsStorage hivatkozást.Ha az Azurite Emulator helyileg van telepítve, és be van állítva AzureWebJobsStorageUseDevelopmentStorage=true, a Core Tools az emulátort használja. További információ: Local Storage Emulator. |
AzureWebJobs.<FUNCTION_NAME>.Disabled |
true|false |
Ha helyileg szeretne letiltani egy függvényt, adja hozzá "AzureWebJobs.<FUNCTION_NAME>.Disabled": "true" a gyűjteményhez, ahol <FUNCTION_NAME> a függvény neve szerepel. További információ: Függvények letiltása az Azure Functionsben. |
FUNCTIONS_WORKER_RUNTIME |
dotnetdotnet-isolatednodejavapowershellpython |
A Functions-futtatókörnyezet célnyelvét jelzi. A Functions-futtatókörnyezet 2.x és újabb verziójához szükséges. A Core Tools létrehozza ezt a beállítást a projekthez. További információkért tekintse meg a FUNCTIONS_WORKER_RUNTIME hivatkozást. |
FUNCTIONS_WORKER_RUNTIME_VERSION |
~7 |
Azt jelzi, hogy a PowerShell 7-et használja helyi futtatáskor. Ha nincs beállítva, a Rendszer a PowerShell Core 6-ot használja. Ezt a beállítást csak helyi futtatáskor használja a rendszer. A PowerShell-futtatókörnyezet verzióját a powerShellVersion webhelykonfigurációs beállítás határozza meg, amikor az Azure-ban fut, amely a portálon állítható be. |
Ha szeretné megtudni, hogyan használhatja a values tömb értékeit környezeti változóként a függvénykódban, tekintse meg a környezeti változókat a fejlesztői útmutatóban.
Ha szeretné megtudni, hogyan használhatja a values tömb értékeit környezeti változóként a függvénykódban, tekintse meg a környezeti változókat a fejlesztői útmutatóban.
Ha szeretné megtudni, hogyan használhatja a values tömb értékeit környezeti változóként a függvénykódban, tekintse meg a környezeti változókat a fejlesztői útmutatóban.
Ha szeretné megtudni, hogyan használhatja a values tömb értékeit környezeti változóként a függvénykódban, tekintse meg a környezeti változókat a fejlesztői útmutatóban.
Beállítások szinkronizálása
Amikor helyileg fejleszti a függvényeket, adja meg az alkalmazás által megkövetelt helyi beállításokat annak a függvényalkalmazásnak az alkalmazásbeállításai között, ahol a kódot üzembe helyezi. Előfordulhat, hogy le kell töltenie az aktuális beállításokat a függvényalkalmazásból a helyi projektbe. Bár manuálisan is konfigurálhatja az alkalmazásbeállításokat az Azure Portalon, az alábbi eszközök lehetővé teszik az alkalmazásbeállítások szinkronizálását a projekt helyi beállításaival is:
Eseményindítók és kötések
Amikor helyileg fejleszti a függvényeket, vegye figyelembe az eseményindító és a bindelés viselkedését. HTTP-eseményindítók esetén meghívhatja a HTTP-végpontot a helyi számítógépen a használatával http://localhost/. A nem HTTP által aktivált függvények esetén több lehetőséget is használhat a helyi futtatáshoz:
- Az élő Azure-szolgáltatásokat célzó kapcsolati sztringekkel tesztelheti a kötéseket a helyi fejlesztés során. Adja hozzá a megfelelő kapcsolati sztringbeállításokat a
Valueslocal.settings.json fájl tömbjében. Ha ezt teszi, a tesztelés során végzett helyi végrehajtások hatással lehetnek a gyártási szolgáltatásokra. Ehelyett fontolja meg külön élő szolgáltatások beállítását a fejlesztés és tesztelés során, majd váltson a különböző szolgáltatásokra az éles üzem során. - Tárolóalapú eseményindítókhoz használjon helyi tárolóemulátort.
- A nem HTTP-eseményindító függvények manuális futtatása speciális rendszergazdai végpontok használatával. További információ: Nem HTTP-aktivált függvény manuális futtatása.
A helyi tesztelés során helyileg kell futtatnia a Core Tools (func.exe) által biztosított kiszolgálót. További információ: Azure Functions Core Tools.
HTTP-teszteszközök
A fejlesztés során bármelyik függvényvégpontot meghívhatja egy webböngészőből, ha támogatják a HTTP GET metódust. A hasznos adatokat támogató egyéb HTTP-metódusok, például a POST vagy a PUT esetében azonban http-teszteszközt kell használnia ezeknek a HTTP-kéréseknek a függvényvégpontokhoz való létrehozásához és elküldéséhez.
Figyelemfelhívás
Olyan esetekben, amikor a kéréseknek bizalmas adatokat kell tartalmazniuk, mindenképpen használjon olyan eszközt, amely védi az adatokat, és csökkenti a bizalmas adatok nyilvános felfedésének kockázatát. A védeni kívánt bizalmas adatok közé tartozhatnak a hitelesítő adatok, titkos kódok, hozzáférési jogkivonatok, API-kulcsok, földrajzi helyadatok és személyes adatok.
Az adatok biztonságossá tételéhez válasszon egy http-teszteszközt, amely offline vagy helyileg működik, nem szinkronizálja az adatokat a felhőbe, és nem követeli meg, hogy online fiókba jelentkezzen be. Bizonyos eszközök bizonyos biztonsági funkciók implementálásával megvédhetik az adatokat a véletlen expozíciótól.
Ne használjon olyan eszközöket, amelyek központilag tárolják a HTTP-kérések előzményeit (beleértve a bizalmas adatokat is), ne kövesse az ajánlott biztonsági eljárásokat, és ne tartsa tiszteletben az adatvédelmi szempontokat.
Fontolja meg az alábbi eszközök egyikének használatát a HTTP-kérések függvényvégpontokra történő biztonságos küldéséhez:
- Visual Studio Code.http fájlkiterjesztéssel a Visual Studio Marketplace-ről, például REST-ügyfél
- A Visual Studio támogatja a .http-fájlokat a 17.8-tól kezdve
- PowerShell Invoke-RestMethod
- Microsoft Edge – Hálózati konzol eszköz
- Bruno
- curl
Helyi tárolóemulátor
A helyi fejlesztés során a helyi Azurite emulátort használhatja a függvények Azure Storage-kötésekkel (Queue Storage, Blob Storage és Table Storage) való teszteléséhez anélkül, hogy távoli tárolási szolgáltatásokhoz csatlakozna. Az Azurite integrálható a Visual Studio Code-tal és a Visual Studióval, és a parancssorból is futtathatja az npm használatával. További információ: Az Azurite emulátor használata helyi Azure Storage-fejlesztéshez.
A local.settings.json fájl gyűjteményében az Values alábbi beállítás azt jelzi, hogy a helyi Functions-gazdagép az Azurite-ot használja az alapértelmezett AzureWebJobsStorage kapcsolathoz:
"AzureWebJobsStorage": "UseDevelopmentStorage=true"
Ezzel a beállítási értékkel, bármelyik AzureWebJobsStorage kapcsolatot használó Azure Storage-eseményindító vagy kötés az Azurite-hoz kapcsolódik, amikor helyben fut. Tartsa szem előtt ezeket a szempontokat a tárolóemuláció helyi végrehajtás során történő használatakor:
- Telepítenie és futtatnia kell az Azurite-t.
- Azt javasoljuk, hogy teszteljen egy tényleges tárolási kapcsolaton keresztül az Azure-szolgáltatásokhoz, mielőtt közzétesz az Azure-ban.
- A projekt közzétételekor ne tegye közzé a
AzureWebJobsStoragebeállítástUseDevelopmentStorage=true. Az Azure-ban aAzureWebJobsStoragebeállításnak mindig annak a tárfióknak a kapcsolati karakterlánca kell lennie, amelyet a függvényalkalmazás használ. További információ:AzureWebJobsStorage.
Kapcsolódó cikkek
- Ha többet szeretne megtudni a függvények Visual Studióval történő helyi fejlesztéséről, olvassa el az Azure Functions fejlesztése a Visual Studióval című témakört.
- Ha többet szeretne tudni a Függvények helyi fejlesztéséről a Visual Studio Code használatával Mac, Linux vagy Windows rendszerű számítógépen, olvassa el az Azure Functions fejlesztése a Visual Studio Code használatával című témakört.
- Ha többet szeretne megtudni a parancssorból vagy a terminálról származó függvények fejlesztéséről, olvassa el az Azure Functions Core Tools használata című témakört.