Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kommentar
Azure Mobile Apps-bindningar är endast tillgängliga för Azure Functions 1.x. De stöds inte i Azure Functions 2.x och senare.
Viktigt!
Supporten upphör för version 1.x av Azure Functions-körningen den 14 september 2026. Vi rekommenderar starkt att du migrerar dina appar till version 4.x för fullständig support.
Den här artikeln beskriver hur du arbetar med Azure Mobile Apps-bindningar i Azure Functions. Azure Functions stöder indata- och utdatabindningar för Mobile Apps.
Med Mobile Apps-bindningar kan du läsa och uppdatera datatabeller i mobilappar.
Paket – Functions 1.x
Mobile Apps-bindningar tillhandahålls i NuGet-paketet Microsoft.Azure.WebJobs.Extensions.MobileApps , version 1.x. Källkoden för paketet finns på GitHub-lagringsplatsen azure-webjobs-sdk-extensions .
I följande tabell visas hur du lägger till stöd för utdatabindning i varje utvecklingsmiljö.
| Utvecklingsmiljö | Lägga till stöd i Functions 1.x |
|---|---|
| Lokal utveckling: C#-klassbibliotek | Installera paketet |
| Lokal utveckling: C#-skript, JavaScript, F# | Automatisk |
| Portalutveckling | Automatisk |
Indata
Mobile Apps-indatabindningen läser in en post från en mobil tabellslutpunkt och skickar den till din funktion. I funktionerna C# och F# skickas alla ändringar som görs i posten automatiskt tillbaka till tabellen när funktionen avslutas.
Input – exempel
Se det språkspecifika exemplet:
I följande exempel visas en Mobile Apps-indatabindning i en function.json-fil och en C#-skriptfunktion som använder bindningen. Funktionen utlöses av ett kömeddelande som har en postidentifierare. Funktionen läser den angivna posten och ändrar dess Text egenskap.
Här är bindningsdata i filen function.json :
{
"bindings": [
{
"name": "myQueueItem",
"queueName": "myqueue-items",
"connection": "",
"type": "queueTrigger",
"direction": "in"
},
{
"name": "record",
"type": "mobileTable",
"tableName": "MyTable",
"id": "{queueTrigger}",
"connection": "My_MobileApp_Url",
"apiKey": "My_MobileApp_Key",
"direction": "in"
}
]
}
I konfigurationsavsnittet förklaras dessa egenskaper.
Här är C#-skriptkoden:
#r "Newtonsoft.Json"
using Newtonsoft.Json.Linq;
public static void Run(string myQueueItem, JObject record)
{
if (record != null)
{
record["Text"] = "This has changed.";
}
}
Indata – attribut
I C#-klassbibliotek använder du attributet MobileTable .
Information om attributegenskaper som du kan konfigurera finns i följande konfigurationsavsnitt.
Indata – konfiguration
I följande tabell förklaras de bindningskonfigurationsegenskaper som du anger i function.json-filen och MobileTable attributet.
| function.json egenskap | Attributegenskap | beskrivning |
|---|---|---|
| typ | saknas | Måste vara inställt på "mobileTable" |
| riktning | saknas | Måste anges till "in" |
| Namn | saknas | Namnet på indataparametern i funktionssignaturen. |
| tableName | TableName | Namnet på mobilappens datatabell |
| id | ID | Identifieraren för posten som ska hämtas. Kan vara statisk eller baseras på utlösaren som anropar funktionen. Om du till exempel använder en köutlösare för din funktion använder du "id": "{queueTrigger}" strängvärdet för kömeddelandet som post-ID för att hämta. |
| samband | Anslutning | Namnet på en appinställning som har mobilappens URL. Funktionen använder den här URL:en för att konstruera nödvändiga REST-åtgärder mot din mobilapp. Skapa en appinställning i funktionsappen som innehåller mobilappens URL och ange sedan namnet på appinställningen connection i egenskapen i indatabindningen. URL:en ser ut som https://<appname>.azurewebsites.net. |
| apiKey | ApiKey | Namnet på en appinställning som har din mobilapps API-nyckel. Ange API-nyckeln om du implementerar en API-nyckel i din Node.js mobilapp eller implementerar en API-nyckel i din .NET-mobilapp. Om du vill ange nyckeln skapar du en appinställning i funktionsappen som innehåller API-nyckeln och lägger sedan till apiKey egenskapen i indatabindningen med namnet på appinställningen. |
När du utvecklar lokalt lägger du till dina programinställningar i den local.settings.json filen i Values samlingen.
Viktigt!
Dela inte API-nyckeln med dina mobilappklienter. Den bör endast distribueras på ett säkert sätt till klienter på tjänstsidan, till exempel Azure Functions. Azure Functions lagrar din anslutningsinformation och API-nycklar som appinställningar så att de inte checkas in på källkontrolllagringsplatsen. Detta skyddar din känsliga information.
Indata – användning
När posten med det angivna ID:t hittas i C#-funktioner skickas den till den namngivna JObject-parametern . När posten inte hittas är nullparametervärdet .
I JavaScript-funktioner skickas posten till objektet context.bindings.<name> . När posten inte hittas är nullparametervärdet .
I funktionerna C# och F# skickas alla ändringar du gör i indataposten (indataparametern) automatiskt tillbaka till tabellen när funktionen avslutas. Du kan inte ändra en post i JavaScript-funktioner.
Output
Använd mobile apps-utdatabindningen för att skriva en ny post till en Mobile Apps-tabell.
Utdata – exempel
I följande exempel visas en C#-funktion som utlöses av ett kömeddelande och skapar en post i en mobilapptabell.
[FunctionName("MobileAppsOutput")]
[return: MobileTable(ApiKeySetting = "MyMobileAppKey", TableName = "MyTable", MobileAppUriSetting = "MyMobileAppUri")]
public static object Run(
[QueueTrigger("myqueue-items", Connection = "AzureWebJobsStorage")] string myQueueItem,
TraceWriter log)
{
return new { Text = $"I'm running in a C# function! {myQueueItem}" };
}
Utdata – attribut
I C#-klassbibliotek använder du attributet MobileTable .
Information om attributegenskaper som du kan konfigurera finns i Utdata – konfiguration. Här är ett MobileTable attributexempel i en metodsignatur:
[FunctionName("MobileAppsOutput")]
[return: MobileTable(ApiKeySetting = "MyMobileAppKey", TableName = "MyTable", MobileAppUriSetting = "MyMobileAppUri")]
public static object Run(
[QueueTrigger("myqueue-items", Connection = "AzureWebJobsStorage")] string myQueueItem,
TraceWriter log)
{
...
}
Utdata – konfiguration
I följande tabell förklaras de bindningskonfigurationsegenskaper som du anger i function.json-filen och MobileTable attributet.
| function.json egenskap | Attributegenskap | beskrivning |
|---|---|---|
| typ | saknas | Måste vara inställt på "mobileTable" |
| riktning | saknas | Måste anges till "out" |
| Namn | saknas | Namnet på utdataparametern i funktionssignaturen. |
| tableName | TableName | Namnet på mobilappens datatabell |
| samband | MobileAppUriSetting | Namnet på en appinställning som har mobilappens URL. Funktionen använder den här URL:en för att konstruera nödvändiga REST-åtgärder mot din mobilapp. Skapa en appinställning i funktionsappen som innehåller mobilappens URL och ange sedan namnet på appinställningen connection i egenskapen i indatabindningen. URL:en ser ut som https://<appname>.azurewebsites.net. |
| apiKey | ApiKeySetting | Namnet på en appinställning som har din mobilapps API-nyckel. Ange API-nyckeln om du implementerar en API-nyckel i din Node.js mobilappsserverdel eller implementerar en API-nyckel i .NET-mobilappens serverdel. Om du vill ange nyckeln skapar du en appinställning i funktionsappen som innehåller API-nyckeln och lägger sedan till apiKey egenskapen i indatabindningen med namnet på appinställningen. |
När du utvecklar lokalt lägger du till dina programinställningar i den local.settings.json filen i Values samlingen.
Viktigt!
Dela inte API-nyckeln med dina mobilappklienter. Den bör endast distribueras på ett säkert sätt till klienter på tjänstsidan, till exempel Azure Functions. Azure Functions lagrar din anslutningsinformation och API-nycklar som appinställningar så att de inte checkas in på källkontrolllagringsplatsen. Detta skyddar din känsliga information.
Utdata – användning
I C#-skriptfunktioner använder du en namngiven utdataparameter av typen out object för att komma åt utdataposten. I C#-klassbibliotek MobileTable kan attributet användas med någon av följande typer:
ICollector<T>ellerIAsyncCollector<T>, därTär antingenJObjecteller någon typ med enpublic string Idegenskap.out JObjectout Tellerout T[], därTär någon typ med enpublic string Idegenskap.
I Node.js funktioner använder du context.bindings.<name> för att komma åt utdataposten.